小编Jür*_*nig的帖子

dotNetOpenAuth示例问题获得正确的安全上下文

我正在浏览dotNetOpenAuth示例(OpenIdRelyingPartyMVC和OpenIdProviderMvc)并提出一个问题以便更好地理解......

在依赖方应用程序的MembersArea中,我使用OpenID" http:// localhost:4864/user/bob3 "作为示例.我被重定向到提供者登录页面,然后我使用Bob 5的凭据.成功登录后,我被重定向回RelyingParty,其中写着"祝贺Bob3 ......".

这只是依赖方应用程序中的一个绑定错误,它接受提交给提供程序的OpenID,或者我在Bob3的安全上下文中使用Bob5的凭据进行身份验证,这在我看来是一个主要的安全问题,如我可以通过提供商处的一个工作用户帐户进行身份验证.

openid federated-identity dotnetopenauth

12
推荐指数
1
解决办法
252
查看次数

Play框架中的Bootstrap glyphicons

我想在play框架中使用Bootstraps glyphicons

所以当我使用时<i class="icon-search" />,bootstrap正在寻找"assets/img/..."中的图标.此行为与播放应用程序解剖结构冲突,因为图像位于"assets/images/..."中.

所以我尝试通过为"assets/img"定义GET请求的额外路由来重新映射:

# Map static resources from the /public folder to the /assets URL path
GET     /assets/img/*file           controllers.Assets.at(path="/public/images", file)
GET     /assets/*file               controllers.Assets.at(path="/public", file)
Run Code Online (Sandbox Code Playgroud)

但是这样做,我得到一个编译错误"没有足够的方法参数:(路径:字符串,文件:字符串)play.api.mvc.Call.未指定的值参数文件."在我正在调用的每个其他公共资产上.

我究竟做错了什么?

playframework twitter-bootstrap playframework-2.0

10
推荐指数
2
解决办法
3168
查看次数

Kubernetes 仪表板 - 登录后出现未知服务器错误

我已经通过 Kubespray 成功部署了 Kubernetes,一切似乎都运行良好。我能够通过 kubectl 访问集群并列出节点、pod、服务、机密等。也可以应用新资源,仪表板端点为我提供仪表板登录页面。

我已经使用不同服务帐户(默认、kubernetes-dashboard、kubernetes-admin、...)的令牌登录......每次登录时,我都会收到与kubespray 仪表板警告禁止弹出窗口中描述的相同的弹出窗口

因此,我按照描述为默认服务帐户应用了集群角色绑定。当我现在使用默认帐户令牌登录时,我只会得到一个

Unknown Server Error (404)
the server could not find the requested resource
Redirecting to previous state in 3 seconds...
Run Code Online (Sandbox Code Playgroud)

之后将我重定向到登录页面的框。如果我通过kubectl proxy. 访问是通过公共集群 IP 的 HTTPS 和通过代理的 HTTP

我正在使用 Kubernetes 1.16.2 和最新的 Kubespray master commit 18d19d9e

编辑:我销毁并重新配置集群以获得一个新的 Kubespray 配置实例,使所有步骤都具有确定性,添加更多信息...

kubectl -n kube-system logs --follow kubernetes-dashboard-556b9ff8f8-jbmgg -- 在登录尝试期间给了我

2019/12/16 12:35:02 [2019-12-16T12:35:02Z] Incoming HTTP/2.0 GET /api/v1/csrftoken/login request from 10.233.74.0:57458: { contents hidden }
2019/12/16 12:35:02 [2019-12-16T12:35:02Z] Outcoming …
Run Code Online (Sandbox Code Playgroud)

kubernetes kubespray

9
推荐指数
2
解决办法
2148
查看次数

.NET Web API将JSON反序列化为对象

我超越了一个公司为我们开发的项目,遗憾的是我们没有得到太多支持,从长远来看,我们应该为自己完成维护.该应用程序包含一个简单的Web客户端(HTTP,JavaScript,Knockout框架)和REST API服务(.NET 4.5,我猜是ASP.NET MVC).

目前我只修改客户端,因此服务器仍应按预期工作.

在客户端,我稍微修改了Knockout View Model(添加了一些可计算和一些值的优化表示).视图模型由"问题"和"评论"组成(作为问题的数组,实际上是一个Bug跟踪器).如果我创建了一个新问题,则会将描述添加到第一个注释中,整个Model是JSON.stringified,并且发送到.NET API服务.我与Firebug一起证明,发布的JSON看起来像这样:

{
   "Id":0,
   "Title":"THis is a title",
   "Comments":[
       {
          "Id":1,
          "Text":"this is the first comment"
       }
   ]
}
Run Code Online (Sandbox Code Playgroud)

在客户端,我有一个"IssueController":

[HttpPost]
public HttpResponseMessage PostIssues( Issue issue ) {
   //issue should already hold the deserialized content of the JSON here,
   //but it only contains 'Id' and 'Title' not the 'Comments' (empty List)
   ...
}
Run Code Online (Sandbox Code Playgroud)

问题域模型对象也有一个用于保存注释的数组,但是为此它已经是空的..NET代码没有明确解析JSON的任何部分,据我所知,MVC框架通过相同的属性名称隐含地执行此操作(是吗?).

反序列化已按预期工作,因此.NET代码应该没问题,但我看起来我已经以某种方式修改了JSON,这种注释的隐式映射不再起作用.不幸的是,我没有很多.NET MVC框架的经验(或者它只是.NET WebAPI框架,甚至不能告诉你).

这些是我的问题:

  1. 那是什么样的.NET REST API框架?我该如何区分?
  2. 这种隐式JSON反序列化是如何工作的,以及它的缺陷是什么,例如当JSON的某些部分未按预期反序列化时?特别是在客户端(正如我所说,我没有修改服务器代码)
  3. 关于我可以对JSON做什么的任何想法,服务器不再喜欢它了?;)

编辑

Issue.cs看起来像这样(简化为肯定):

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web; …
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc json knockout.js

6
推荐指数
1
解决办法
5461
查看次数

将play作为war文件部署到servlet容器中,即使它大量使用JPA?

我是一个相当新的玩家,事实上我现在正在阅读它,我应该说什么...问题的问题.目前我正在启动一个依赖于许多特殊java库(hibernate-spatial,jts等等)的项目.因为它还应该实现一个全面的REST API,所以我必须在Django和经典的JavaEE Glassfish应用程序之间做出决定.

但是现在我认为,通过游戏,我可以获得两全其美,我真的想深入了解这一点.

我真的无法想象,游戏的一个特点是将播放应用程序部署为WAR文件,甚至是像tomcat这样的简单Servlet容器.

所以,如果我的播放应用程序使用基于hibernate/hibernate-spatial的JPA持久层仍然可以作为WAR文件部署到一个简单的tomcat servlet容器中吗?或者我至少需要一个JavaEE Application Server?

我简直不敢相信......

playframework playframework-2.0

5
推荐指数
2
解决办法
4912
查看次数

淘汰赛计算与订阅,计时问题

刚刚发现,在KnockoutJS中,订阅函数是在依赖可计算对象之前进行评估的,并且需要可以提交该函数的人,因为在文档或论坛中找不到有关Knockouts计时的信息。

这意味着:如果我有这样的模型...

var itemModel = function (i) {
    var self = this;

    self.Id = ko.observable(i.Id);
    self.Title = ko.observable(i.Title);
    self.State = ko.observable(i.State);

};

var appModel = function () {
   var self = this;

   self.Items = ko.observableArray() // <-- some code initializes an Array of itemModels here
   self.indexOfSelectedItem = ko.observable();

   self.selectedItem = ko.computed(function () {
       if (self.indexOfSelectedItem() === undefined) {
            return null;
       }
       return self.Items()[self.indexOfSelectedItem()];
   });
};
Run Code Online (Sandbox Code Playgroud)

我想用一个可观察的索引字段来跟踪选定的数组项,然后像这样订阅此索引字段...

appModel.indexOfSelectedItem.subscribe(function () {
    // Do something with appModel.selectedItem()
    alert(ko.toJSON(appModel.selectedItem()));
}
Run Code Online (Sandbox Code Playgroud)

...在使用新的索引值重新评估计算值之前先评估订阅函数,因此我将获得与上一个选定索引相对应而不是实际选定索引的selectedItem()。

两个问题:

  • 那正确吗?
  • 那么,如果每次我调用一个简单函数都会得到当前选定的项目,而又在任何已经完成且不再需要它的时间都对ko.computed进行求值时,为什么还要使用ko.computed()呢?

javascript knockout.js

5
推荐指数
1
解决办法
2202
查看次数

如何显式定义 Kubernetes 服务的端点

我通过 kubespray 在我自己的几个虚拟机上配置了一个 kubernetes 集群。Kubespray 使用project-calico 作为默认网络插件,这非常适合我将集群网络中的代理服务连接到外部世界的要求。

Kubespray 将 apiserver 本身部署为 ClusterIP 服务。为了使其可以从外部访问,它使用主节点主机 IP 地址定义了该服务的端点,据我自己计算,该地址由 Calico 路由到内部 ClusterIP。

我的问题是:如何定义我自己的端点(用于另一个服务),因为这些端点已经通过配置 service.yaml 隐式定义并且不能被覆盖。我想遵循类似的方法让我的 Rook/Ceph 仪表板从集群外部可见。

编辑:请注意kubectl get ingresses.networking.k8s.io --all-namespaces返回No resources found.kubectl describe service kubernete返回

Name:              kubernetes
Namespace:         default
Labels:            component=apiserver
                   provider=kubernetes
Annotations:       <none>
Selector:          <none>
Type:              ClusterIP
IP:                10.233.0.1
Port:              https  443/TCP
TargetPort:        6443/TCP
Endpoints:         192.168.103.254:6443
Session Affinity:  None
Events:            <none>
Run Code Online (Sandbox Code Playgroud)

calico kubernetes kubernetes-service kubespray

5
推荐指数
2
解决办法
8477
查看次数

在启动播放应用程序时初始化昂贵的对象

我正在尝试使用play framework 2.2实现路由服务.因此,我有一个非常昂贵的图单例对象,需要在部署和启动播放应用程序时进行实例化.图的实例化需要大约.10到15分钟,将所有节点和边缘和限制加载到内存中,我不想在第一个API GET请求确实进入时触发.

此外,我希望能够做出反应,如果第一个GET请求进入并且图形尚未加载,则返回错误代码(HTTP 503或类似的东西).

只是一个想法:这应该在Application()构造函数中完成吗?我问,因为Application没有开箱即用的构造函数,我想这有一些意图.那么构造函数应该是私有的吗?

playframework playframework-2.0 playframework-2.2

2
推荐指数
1
解决办法
2164
查看次数