【发布时间】:2013-03-09 08:06:33
【问题描述】:
我正在尝试向Github's markdown API 发送一些文本并取回它的原始 HTML 表示形式。
目前我有这个代码:
$.ajax({
type: "POST",
dataType: "jsonp",
processData: false,
url: "http://api.github.com/markdown/raw",
data: {
"text": $('#some_textarea').val()
},
success: function(data){
console.log("success!");
console.log(data);
},
error: function(jqXHR, textStatus, error){
console.log(jqXHR, textStatus, error);
}
});
但我得到“错误”(error 回调中的文本状态)。我做错了什么?
【问题讨论】:
-
你遇到了什么错误?
-
textStatus的值为“error”,不多也不少。另外,error的值是空字符串。 -
您无法发出 JSONP POST 请求。 JSONP 始终是 GET,因为它只是将
<script>标记附加到文档。 jQuery 可能正在按照要求执行 JSONP 请求,API 无法理解。 -
@FelixKling 如果我将其更改为“json”,我会得到完全相同的结果
-
好吧,API 不返回 JSON,它返回简单的文本。如果你设置了
dataType: "json",那么jQuery会尝试将响应解析为JSON,这样会失败。如果 API 不支持 CORS(但我似乎记得支持),那么无论如何您都无法从浏览器向它发出 Ajax 请求。
标签: javascript jquery github markdown