我正在嘗試使用jquery內的greasemonkey腳本獲取jsonp回調。這裏是我的jQuery:未定義JSONP回調方法
$.ajax({
url: "http://mydomain.com/MyWebService?callback=?",
data: { authkey: "temphash" },
type: "get",
dataType: "json",
cache: false,
success: function(data) {
console.log(data);
}
});
在我的web服務(asp.net)我返回與內容類型的application/javascript
響應。服務器實際上是發回的響應是:
jsonp1276109314602({"message":"I'm getting tired of this not working"})
的jsonp1276109314602
方法名稱是由jQuery的被隨機生成的,並且我與Request.QueryString["callback"]
但是我的成功函數不會被調用和螢火蟲抓住它控制檯給我一個錯誤,說jsonp1276109314602 is not defined
。
我在做什麼錯?
備註 我從craigslist頁面上的greasemonkey腳本進行此調用。這是一個跨域請求,但我可以看到請求實際上將其發送到服務器並返回一個良好的響應,但無論出於何種原因,當響應返回時,jquery創建的已註冊回調似乎不存在。如果我在craigslist頁面的螢火蟲控制檯中運行腳本,但不能在從greasemonkey腳本運行腳本時運行正常。使用JSONP加載一個JSON塊:
你在的GreaseMonkey腳本嵌入jQuery的或單獨加載它? – James 2010-06-09 19:18:46
...或者,您正在增強的頁面上是否已有jQuery? – James 2010-06-09 19:19:09
我已經通過greasemonkey腳本加載了 – Micah 2010-06-09 19:28:33