2014-03-13 40 views
0

我有一個拉動的數據不管是誰登錄在Windows機器上像這樣一個ASP頁:JSONP AJAX返回正確的值,但有錯誤

<% 
Response.AddHeader "Access-Control-Allow-Origin", "*" 
username=(Request.ServerVariables("LOGON_USER")) 
username=replace(username,"CORP\","") 
%> 
<%=username%> 

在不同的領域我把這個頁面用AJAX調用JSONP像這樣:

$.ajax({ 
    url:'http://myDomain/get_cur_user.asp', 
    dataType: 'jsonp', 
    jsonp: 'callback', 
    error: function(jqXHR, textStatus, errorThrown){ 
     console.log(textStatus + errorThrown); 
    }, 
    success: function(data){ 
     console.log(data); 
    } 
}); 

我得到的回覆是這樣的:

Resource interpreted as Script but transferred with MIME type text/html: "http://myDomain/get_cur_user.asp?callback=jQuery1102012502304464578629_1394753532582&_=1394753532583". jquery-1.10.2.js:8516 
Uncaught ReferenceError: theOutputedUserName is not defined get_cur_user.asp?callback=jQuery1102012502304464578629_1394753532582&_=1394753532583:1 
parsererrorError: jQuery1102012502304464578629_1394753532582 was not called 

的 「OutPutedUserName」 我正是我想要的東西。所以它「正在工作」,但同時也在爆炸。任何幫助將非常感激。

回答

0

我想出了我自己問題的答案。

我傳統的ASP頁面看起來是這樣的:

<% 
    dim callback 
    username = replace((Request.ServerVariables("LOGON_USER")),"CORP\","") 
    callback = Request("callback") 
    Response.Write(callback & "([{""id"": """& username &"""}])") 
%> 

而且我的javascript(JQuery的)看起來是這樣的:

$.ajax({ 
    url:'http://myDomain/get_cur_user.asp', 
    dataType: 'jsonp', 
    jsonp: 'callback', 
    error: function(jqXHR, textStatus, errorThrown){ 
     console.log(textStatus + errorThrown); 
    }, 
    success: function(data){ 
     console.log(data); 
    } 
}); 

非常感謝這個網站,我碰到: http://forum.jquery.com/topic/classic-asp-and-jsonp-output

相關問題