草庐IT

servicestack-auth

全部标签

c# - 使用 ServiceStack.Text 将 json 字符串反序列化为对象

我有一个JSON字符串,如下所示:"{\"Id\":\"fb1d17c7298c448cb7b91ab7041e9ff6\",\"Name\":\"John\",\"DateOfBirth\":\"\\/Date(317433600000-0000)\\/\"}"我正在尝试将其反序列化为对象(我正在实现一个缓存接口(interface))我遇到的麻烦是当我使用JsonSerializer.DeserializeFromString(jsonString);它回来了"{Id:6ed7a388b1ac4b528f565f4edf09ba2a,Name:John,DateOfBirth:/D

c# - ServiceStack 是否需要 ResponseStatus?

是否需要ResponseStatus?wiki说我们需要在我们的响应DTO中有一个ResponseStatus属性来处理异常序列化:https://github.com/ServiceStack/ServiceStack/wiki/Validation但是,即使响应DTO中没有ResponseStatus属性,ResponseStatus似乎也是自动生成的。我们需要ResponseStatus属性吗? 最佳答案 ErrorHandlingDocs解释了如何控制哪些服务返回填充的ResponseStatusDTO,即:错误响应类型抛出

c# - ServiceStack Runner 能否获取请求体?

是否有可能在没有重大黑客攻击的情况下,在Runner中获取ServiceStack请求的原始请求主体?我正在编写一个oauth服务提供程序,以使用新的API(服务和运行程序)在ServiceStack之上运行。由于OAuth签名的工作方式,我需要为每个请求获取原始请求正文。OAuth保护层被添加到Runner,以便无效的OAuth请求可以轻松返回空/错误响应,而无需服务类中的任何样板或子类化特殊的“OAuthService”类。 最佳答案 获取RawRequestBody的方法是使用IHttpRequest.GetRawBody()

c# - ServiceStack 服务可以包含多个方法吗?

环境是VisualStudio2012、ServiceStack、ASP.NETWeb应用程序项目(遵循https://github.com/ServiceStack/ServiceStack/wiki/Create-your-first-webservice)查看ServiceStack.Examples中的一些类,我注意到大多数服务只包含一个方法。要么覆盖Execute()或者,如果是REST服务,则重写OnPost/Get/Put/Delete().如果我需要实现数十个函数,我应该如何制作完整的API集RegisterUser(),RemoveUser(),AddFriend()

c# - ServiceStack.Text 如何将类序列化为 JSON

刚刚下载了ServiceStack.Text以在我的ASP.NET中使用它。我有很多属性的类,想将其中五个(字符串、整数、二进制)序列化为JSON。谁能发布简单示例如何从我的类创建JSON对象? 最佳答案 默认情况下,ServiceStack将反序列化POCO的所有公共(public)属性。如果您只想序列化几个属性,那么您需要使用[DataContract]、[DataMember]属性来装饰您的类(与您使用MSDataContractJsonSerializer时的方式相同),例如:[DataContract]publicclas

c# - Owin auth - 如何获取请求身份验证 token 的客户端的 IP 地址

使用OwinSecurity,我试图使API具有2种身份验证方法。context变量(OAuthGrantResourceOwnerCredentialsContext)中是否有属性允许我访问客户端的IP地址strong>向API发送对身份验证token的初始请求?我的身份验证方法的基本片段如下所示:publicoverrideasyncTaskGrantResourceOwnerCredentials(OAuthGrantResourceOwnerCredentialsContextcontext){awaitTask.Run(()=>{varremoteIpAddresss=con

c# - ServiceStack.Text 是否提供 JSON 的 pretty-print ?

TL;DR:ServiceStack.Text中是否有内置的方法来生成打印精美的JSON?我正在使用ServiceStack.Text用于进行JSON序列化。到目前为止它工作得很好,但是创建的JSON(使用.ToJSON())没有用空格或换行符格式化(最有可能在通过网络发送时节省空间)。但是,在某些情况下,最好对JSON进行格式化以便于人类阅读。.Dump()方法进行某种格式化,但不会生成有效的JSON(即缺少周围的双引号)。 最佳答案 ServiceStack.Text中的T.Dump()和T.PrintDump()扩展方法只是使

c# - ServiceStack.Net 的多个可选参数

我正在尝试使用ServiceStack.Net实现具有多个可选参数的服务目前我的路线是这样的Routes.Add("/save/{Year}/{Week}");我想像这样支持uris:/save/2010/12/Monday/4/Tuesday/6/Wednesday/7即星期一=4,星期二=6,星期三=7但是我希望能够忽略天数,即调用该服务的人可以决定他们是否要保存每一天的每个值...即像这样缺少参数值?Monday=4&Wednesday=7&Friday=6当然,一种解决方案是使用以下路由,当我不想保存值时只传递0。Routes.Add("/save/{Year}/{Week}/

c# - 如何使用 ServiceStack 客户端使用文件

我正在尝试使用ServiceStack以RESTful方式将文件返回给ServiceStack客户端。我已经阅读了关于SO(here和here)的其他问题,这些问题建议使用HttpResult和FileInfo对象或MemoryStream以允许将ContentTypeheader更改为相关文件类型。当我通过浏览器调用服务时,这对我有用,正确的文件会自动开始下载。我如何使用ServiceStack客户端之一使用文件?我正在使用RequestDTO并尝试使用类似的东西返回returnnewHttpResult(newFileInfo("file.xml"),asAttachment:tr

c#文件上传的分块传输结合访问ServiceStack中的路由参数

我正在寻找使用IRequiresRequestStream接口(interface)来启用使用ServiceStack(v3)和分块传输编码的大文件上传(视频文件)。标准文件上传似乎无法处理我们客户上传的一些较大的视频文件,因此我们希望为这些文件启用分块传输编码。我已经成功测试了分块传输编码文件上传,但是还有一些参数需要与文件一起发送。由于IRequiresRequestStream绕过ServiceStack请求对象解析器,请求对象中与Stream一起的任何其他参数显然不会被填充。作为解决方法,我可以看到以下选项:查询字符串参数,可通过this.Request.QueryString