我正在使用邮递员点击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"}
我的问题是如何像postman一样使用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": ""});
答案 0 :(得分:1)
InputJSON
在这里应该是POST参数名称,因此它不应与中间带有:
的数据连接。
它应遵循正常的name=value
格式。