我找到了这篇文章: http://msdn.microsoft.com/en-us/library/dd251073.aspx
我怎么能用jquery.ajax写“get”请求?
答案 0 :(得分:1)
您可以使用.get()
方法。
答案 1 :(得分:0)
http://api.jquery.com/jQuery.get/
或者只使用常规$ .ajax()方法(http://api.jquery.com/jQuery.ajax/),默认为GET请求。
答案 2 :(得分:0)
这取决于Bing的API是否遵循用于指定JSONP回调的标准?callback=function
方法,但如果是这样,那么Search()
函数的简化版本应该这样做:
// Bing API 2.0 code sample demonstrating the use of the
// Spell SourceType over the JSON Protocol.
function Search()
{
var requestStr = "http://api.bing.net/json.aspx?"
// Common request fields (required)
+ "AppId=" + AppId
+ "&Query=Mispeling words is a common ocurrence."
+ "&Sources=Spell"
// Common request fields (optional)
+ "&Version=2.0"
+ "&Market=en-us"
+ "&Options=EnableHighlighting"
$.getJSON(requestStr, SearchCompleted);
}
请记住,这两种方法都不会直接触发GET,就像您可能习惯使用XMLHttpRequest向本地服务器发出的AJAX请求一样。
为了规避对XHR的跨域限制,JSONP通过在文档中注入一个新的脚本元素,然后导致浏览器加载(通过GET)并执行该远程脚本来工作。该远程脚本的内容是对回调函数的单个函数调用,其中整个JSON有效负载作为其参数。
如果这不起作用,包括那些Bing特定的回调选项应该与jQuery结合使用:
// Bing API 2.0 code sample demonstrating the use of the
// Spell SourceType over the JSON Protocol.
function Search()
{
var requestStr = "http://api.bing.net/json.aspx?"
// Common request fields (required)
+ "AppId=" + AppId
+ "&Query=Mispeling words is a common ocurrence."
+ "&Sources=Spell"
// Common request fields (optional)
+ "&Version=2.0"
+ "&Market=en-us"
+ "&Options=EnableHighlighting"
// JSON-specific request fields (optional)
+ "&JsonType=callback"
+ "&JsonCallback=SearchCompleted";
$.getJSON(requestStr);
}
请记住,在这一点上(以及之前),你并没有真正使用jQuery本身。尽管$.getJSON()
或$.ajax()
或$.get()
看起来像是在做比MSDN示例更强大的事情,但jQuery在这种情况下会做同样的事情(注入一个脚本元素)其src
指向requestStr
)。