Jquery 来自附加SDK的AJAX Put请求
在过去的3个小时里,我一直在努力从main.js/index.js页面向Firefox插件发出put请求,但运气不好 从文档中可以看出,这是要调用的正确AJAX(如果您想编辑它,请使用正确的站点)Jquery 来自附加SDK的AJAX Put请求,jquery,firefox,request,firefox-addon,firefox-addon-sdk,Jquery,Firefox,Request,Firefox Addon,Firefox Addon Sdk,在过去的3个小时里,我一直在努力从main.js/index.js页面向Firefox插件发出put请求,但运气不好 从文档中可以看出,这是要调用的正确AJAX(如果您想编辑它,请使用正确的站点) $.ajax({ url:“https://api.myjson.com/bins/1ihp9", 键入:“放置”, 数据:“{”键更新“:“值更新”}”, contentType:“应用程序/json;字符集=utf-8”, 数据类型:“json”, 成功:函数(数据、文本状态、jqXHR){ }
$.ajax({
url:“https://api.myjson.com/bins/1ihp9",
键入:“放置”,
数据:“{”键更新“:“值更新”}”,
contentType:“应用程序/json;字符集=utf-8”,
数据类型:“json”,
成功:函数(数据、文本状态、jqXHR){
}
});
Firefox插件的SDK不使用$.ajax()
,而是使用Request()
。因此,我将代码设置为:
var latestTweetRequest=请求({
url:“https://api.myjson.com/bins/1ihp9",
//updatedjson是文档中要求的字符串
内容:updatedjson,
标题:{
“contentType”:“application/json;charset=utf-8”,
“数据类型”:“json”
},
未完成:功能(响应){
控制台日志(响应);
}
});
latestTweetRequest.put();
但无论我做什么,它都不起作用。响应结果为“构造函数{})
我可以对站点执行get请求。遗憾的是,请求对象不允许您处理错误,因此当出现问题时,您会感到困惑。如果您需要更多控制,可以尝试使用
net/xhr
模块
我不确定这里的问题是什么,但似乎服务器不喜欢它看到的对象
我发现返回了此错误消息(作为JSON对象):
这段代码将您的请求包装在一个20秒的延迟计时器中,即Firefox启动并运行此附加代码后的20秒,因此时间不多,但足以完成此任务
一旦Firefox通过jpm run
命令启动,立即进入“工具”菜单。打开“工具”->“Web开发者”->“浏览器工具箱”。打开的窗口看起来像Firefox开发工具,但实际上是在调试整个浏览器。现在快速转到“网络”选项卡,如果您在20秒内完成所有操作,您将查看您的网络请求并能够对其进行检查
祝您好运!您是否已在“网络”选项卡中签出请求?是否返回了任何错误代码?呼叫是否仍在进行?您是否尝试过标准get以查看是否可以接收数据?
{
status:500
message:"Internal Server Error"
more_info:"undefined method `string' for #<PhusionPassenger::Utils::TeeInput:0x007fcf73b9bd98>"
}
var { setTimeout } = require("sdk/timers");
setTimeout(function() {
var latestTweetRequest = Request({
url: "https://api.myjson.com/bins/1ihp9",
content: updatedjson, //updatedjson is a string here, as requested in documentation
headers: {
"contentType" : "application/json; charset=utf-8",
"dataType" : "json"
},
onComplete: function (response) {
console.log(response);
},
onError: function (err) {
console.error(err);
}
});
latestTweetRequest.put();
}, 1000 * 20);