[英]Ajax — cannot make the data to be sent as “x-www-form-urlencoded”
[英]Using x-www-form-urlencoded data on JQuery
我使用邮递员访问programmr.com api,快照成功如下所示:
卷曲版本:pastebin.com/GQDZJALj
然后,我尝试使用JQUERY通过以下代码访问API:
var data = "InputJSON:" + JSON.stringify({ "mode": "java_example", "apiKey": "bb6b589027a097b38e8cc47cffb8e70a", "files": [ { "name": "Test.java", "content": "class Test{\n \n public static void main(String[] arg){\n \n System.out.println(\"wwwwwww!!\"); \n }\n\n}\n\n" } ], "eval code": ""});
$.ajax({
type: 'POST',
url: "http://console.programmr.com/api/eval",
headers: {'Content-Type': 'application/x-www-form-urlencoded'},
contentType: 'application/x-www-form-urlencoded; charset=utf-8',
dataType: 'json',
data: data,
success: function (response) {
console.log(response);
return response;
}
原始字符串数据:
InputJSON:{"mode":"java_example","apiKey":"bb6b589027a097b38e8cc47cffb8e70a","files":[{"name":"Test.java","content":"class Test{\n \n public static void main(String[] arg){\n \n System.out.println(\"wwwwwww!!\"); \n }\n\n}\n\n"}],"eval code":""}
API响应一直说我的JSon无效
{error: "Invalid JSON"}
我的问题是如何像邮递员一样使用Javascript / JQuery向API请求?
任何帮助将不胜感激。
提前致谢
更新:
它应该是:
var data = "InputJSON=" + JSON.stringify({ "mode": "java_example", "apiKey": "bb6b589027a097b38e8cc47cffb8e70a", "files": [ { "name": "Test.java", "content": "class Test{\n \n public static void main(String[] arg){\n \n System.out.println(\"wwwwwww!!\"); \n }\n\n}\n\n" } ], "eval code": ""});
InputJSON
应该将InputJSON
作为POST参数名称,因此不应将其与数据之间以:
串联。
它应遵循正常的name=value
格式。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.