我正在尝试将.json文件加载到javascript中的变量中,但我无法使其工作.这可能只是一个小错误,但我找不到它.
当我使用这样的静态数据时,一切正常:
var json = {
id: "whatever",
name: "start",
children: [{
"id":"0.9685","name":" contents:queue"},{
"id":"0.79281","name":" contents:mqq_error"}}]
}
Run Code Online (Sandbox Code Playgroud)
所以我将{}中的所有内容放在content.json文件中并尝试将其加载到本地javascript变量中,如下所述:将json加载到变量中
var json = (function() {
var json = null;
$.ajax({
'async': false,
'global': false,
'url': "/content.json",
'dataType': "json",
'success': function (data) {
json = data;
}
});
return json;
})();
Run Code Online (Sandbox Code Playgroud)
我用chrome调试器运行它,它总是告诉我变量json的值为null.content.json与调用它的.js文件驻留在同一目录中.
我错过了什么?
我想通过jQuery拦截提交,并首先检查服务器上是否存在文件.如果它存在继续请求,如果不显示消息并且不发送请求.这就是我所拥有的:
$("#methodForm").submit(function(e){
checkIndex('upload/segments.gen').done(function() {
return true;
}).fail(function () {
e.preventDefault();
alert("No index present!");
return false;
});
});
Run Code Online (Sandbox Code Playgroud)
这是checkIndex()
:
function checkIndex(file){
return $.ajax({
url : file,
type:'HEAD'
});
}
Run Code Online (Sandbox Code Playgroud)
会发生什么:文件存在于服务器上,但checkIndex
返回失败.首先,我看到警报弹出,然后继续并将发布请求发送到服务器.
我也将其checkIndex()
用于其他目的,它的工作方式与预期相同,所以我很确定错误是在提交例程中的某个地方.但我不知道它有什么问题.
我正在研究一些创建X509certificate和公钥/私钥对的代码.公钥被添加到证书中,并将其发送给签署它的CA.
然后通过System.Security.Cryptography.X509Certificates.X509Certificate2类访问返回的证书.现在,我想使用此证书启动与其他客户端的安全连接.因此我使用SslStream类.要启动SSL握手,我使用以下方法:
server.AssociatedSslStream.AuthenticateAsServer(
MyCertificate, // Client Certificate
true, // Require Certificate from connecting Peer
SslProtocols.Tls, // Use TLS 1.0
false // check Certificate revocation
);
Run Code Online (Sandbox Code Playgroud)
此方法要求私钥与证书关联.当然,CA返回的证书不包含私钥.但它作为.key文件存储在硬盘上.X509Certificate2类有一个名为PrivateKey的属性,我想将私钥与证书关联,但我找不到设置此属性的方法.
有没有办法可以将私钥与.net X509类关联起来?
有没有办法调试jsp页面内的javascript,就像使用chrome一样:
<script>
var error = "${error}";
if(error != ""){
alert(error);
}
</script>
Run Code Online (Sandbox Code Playgroud)
在开发人员工具窗口中,我只能找到.js文件.
有没有办法将模板应用于现有文档?
它似乎只有在我创建一个全新的文档时才有效,而且我不想复制和粘贴所有内容。
我得到了这个创建JSON数据的servlet,我希望将这些数据传递给jsp页面,该页面应该通过InfoVis工具包显示数据.
servlet.java
JSONObject json = new JSONObject();
JSONArray toplevel = new JSONArray();
JSONObject sublevel;
try{
json.put("id", "node" + 0);
json.put("name", "name" + 0);
int count = 5;
for(int i=1; i < count; i++){
sublevel = new JSONObject();
sublevel.put("id", "node" + i);
sublevel.put("name", "name" + i);
toplevel.put(sublevel);
}
json.put("children", toplevel);
} catch (JSONException jse) {
}
request.setAttribute("jsonString", json.toString());
RequestDispatcher dispatcher = request.getRequestDispatcher("graph.jsp");
dispatcher.forward(request, response);
Run Code Online (Sandbox Code Playgroud)
以下代码由InfoVis Toolkit提供,我不确定是否可以更改.或者至少我没有足够的经验来改变它.
graph.jsp
<body onload="init('${jsonString}');">
Run Code Online (Sandbox Code Playgroud)
spacetree.js
function init(jsonString){
var json = jsonString;
Run Code Online (Sandbox Code Playgroud)
最初只是函数调用
<body onload="init()">
Run Code Online (Sandbox Code Playgroud)
但init()函数具有硬编码的JSON变量,这当然没有用.所以我正在寻找一种方法来实现这种动态.但是由于字符串中的引用它现在完全混淆了onload = …
我正在研究一些当前使用OpenSSL.net为证书签名请求创建公钥/私钥对的代码.该请求配有公钥并发送给CA,CA返回签名证书.然后将以前创建的私钥添加到证书中:
myCert.PrivateKey = CryptoKey.FromPrivateKey(rsa.PrivateKeyAsPEM, null);
Run Code Online (Sandbox Code Playgroud)
问题是我需要一个.net X509Certificate,因为该软件的其余部分使用SslStream和其他.net类进行TLS.
我能够从CA的响应中创建证书,但我找不到向其添加私钥的方法.我还尝试从CA的响应创建一个OpenSSL证书,将其导出为DER或PEM并从中创建.net证书,但它始终忽略私钥.
关于如何解决这个问题的任何想法?
javascript ×4
.net ×2
c# ×2
jquery ×2
json ×2
ssl ×2
debugging ×1
jsp ×1
libreoffice ×1
servlets ×1