jjzjj

ServiceStack

全部标签

android - 服务堆栈的基本身份验证

我在我的Android应用程序(使用Xamerin编写)中使用JsonServiceClient。我有一个测试客户端,可以与servicestack网站上提供的HelloWorld示例一起使用。它无需身份验证即可正常工作并快速返回值。现在我正尝试将身份验证纳入其中,从非常基本的身份验证开始。我在服务器上有一个自定义的身份验证和session类,如下所示:publicclassuserSession:AuthUserSession{publicstringclientCode{get;set;}}publicclassuserAuth:CredentialsAuthProvider{pu

ServiceStack Soap-无效的凭据回复HTML

在我的服务中,如果凭据无效,我有一个自定义AUTH提供商,它会抛出Httperror:throwHttpError.Unauthorized("InvalidUsernameorPassword");当我通过REST访问此服务并故意输入无效的凭据,我会得到预期的回复:{"ResponseStatus":{"ErrorCode":"Unauthorized","Message":"InvalidUserNameorPassword",}}但是,通过SOAP客户端执行同样的事情,我从IIS服务器获得了HTML响应:这会导致我的肥皂客户破裂,因为它无法对响应进行估计。如果请求中包含错误的数据值,也可

是否可以使用ServiceStack的Ormlite进行子查询加入?

是否可以使用ServiceStack的Ormlite进行子查询加入?这样的东西?varq=Db.From().Join((c,subq)=>c.CustomerID==subq.CustomerID)看答案没有打字的API支持以加入子选择,但是您可以使用CustomJoin为此,例如:varq=Db.From().CustomJoin("INNERJOIN(SELECTIdFROM...)subONsub.Id=Customer.Id")

使用ServiceStack Angular 2模板在服务器上渲染SEO META标签

ServiceStackAngular2模板只有一个入口点-INXED.HTML。假设我们希望在服务器上呈现SEOMETA标签,以进行SEO优化/诸如/product/id的路由。有什么想法如何做到吗?看答案ServiceStack的单页应用模板顾名思义,只有一台服务器运行index.html页。这意味着所有路由均在AngularJS上对客户端(即浏览器)执行。这意味着,当客户端导航到网站上的另一个页面时,例如至/products/1该请求由Angular客户端路由来处理以加载配置的组件,即请求永远不会到达服务器。但是当提出初始请求时/products/1,请求已发送到服务器,但为了使Angu

coreclr/serviceStack连接池

我正在将ServiceStack与CoreClr一起使用,并在MSBaseCoreclr官方图像上托管。我的连接池设置似乎并未受到尊重。varbuilder=newSqlConnectionStringBuilder(ConnectionString);builder.MaxPoolSize=20;builder.MinPoolSize=5;builder.Pooling=true;builder.ApplicationName="Core-CLR-API";builder.WorkstationID=Environment.MachineName;varfactory=newOrmLiteC

multithreading - Redis 响应异常 : Unknown reply on multi-request

我们有一个Windows服务,每分钟运行一个quartz作业来处理3个多小时前提交的评论。该应用程序使用最新的ServiceStack.Redisv3库与另一台机器上的Redis2.8.12实例进行交互。提交新评论时,新评论的ID将存储在Redis中的排序集中,我们使用NewReview.DateCreated.Ticks作为分数。当作业运行时,它会执行以下代码以获取要处理的评论列表:using(varredisClient=RedisClientManager.GetClient()){...varcutOff=DateTime.Now.AddHours(-3);redisClien

redis - 为什么 Redis Pub/Sub 不允许在回调中访问 Redis?

关于如何使用RedisPub/Sub(来自ServiceStack,但我不认为它只是ServicStack),我真的很困惑。我没有看到具有此限制的Pub/Sub的用处,因为我们通常使用Redis而不仅仅是作为消息队列。因此,如果您不能从订阅回调中执行任何Redis命令,您最终只能创建自己的消息处理程序而不是使用Pub/Sub,不是吗?简而言之,我的问题是如何正确使用Pub/Sub,以便在有消息时可以访问Redis?如果没有办法,那么Pub/Sub就不能用于很多应用。-我没有发布代码,因为我已经知道创建Pub/Sub连接的代码。我正在寻找软件模式/架构建议并确认这是一个问题。

redis - 如何将 requestDto 推送到 Redis 并一直保存到它被读取?

我想获取一个已发布到ServiceStack服务的RequestDTO,并使用ServiceStack.ServerRedisMqServer提供的内置消息传递功能将其推送到Redis。这条消息应该是持久的(如果它被成功推送),因为它应该在Redis服务器重启(如果发生这种情况)和其他不幸事件后仍然存在。它应该一直存在,直到它被另一个尚未确定的服务读取/处理。这是发布/订阅、请求/响应,还是只是请求/无响应?谢谢你,斯蒂芬 最佳答案 您需要确保您的Redis服务器配置为持久保存到磁盘,redispersistence上的文档描述如何

c# - Redis key partitioning practices with linked items

我正在为其使用Redis数据库和ServiceStack客户端。我有一个名为“Post”的类,它有一个属性GroupId。现在,当我存储此类时,key是“urn:post:2:groupid:123”。现在,如果我想查找与一个组相关的所有帖子,我需要使用SearchKeys("urn:*groupid:123")方法来检索与一个组相关的所有帖子。这是使用Redis数据库的最佳实践,还是我应该将我的帖子key转换为“urn:groupid:123”post:2”的形式?如果是这样,我该如何实现?课后:publicclassPost{publicconststringPOST_INCREM

c# - ServiceStack Redis 同时读取请求的问题

我正在使用ServiceStack.Redis实现来缓存通过WebAPI接口(interface)传送的事件。这些事件应该被插入到缓存中并在一段时间后(例如3天)自动删除:privatereadonlyIRedisTypedClient_eventsCache;publicEventMonitorCache([NotNull]IRedisTypedClienteventsCache){_eventsCache=eventsCache;}publicvoidDispose(){//Releaseconnectionsagain_eventsCache.Dispose();}publicv