2016-08-23 52 views
1

我想通過jQuery向不同服務器中存在的PHP腳本(比如IP爲11.1.35.12)發出AJAX請求,並且PHP腳本的位置是「C :\ inetpub \ wwwroot \ Kibana \ mytelemetry.php「。我的下面的ajax代碼應該是什麼網址?使用jQuery的AJAX調用中的url字段的格式

$.ajax({ 

    url  : "11.1.35.12/Kibana/mytelemetry.php", 
    cache : false, 
    data : ({ 
        DshBrdName : strFullDashBoardName, 
        DshBrdID : currentDashboard, 
        r   : Math.random() 
       }), 
    success : function(data, textStatus, jQxhr){ 
        //alert(textStatus); 
       }, 
    error : function(jqXHR, textStatus, errorThrown){ 
        //alert(textStatus); 
        alert(errorThrown); 
       }, 
    type : "POST" 
}); 

P.S:以上不行!我很確定我的網址格式是錯誤的。

+1

https://en.wikipedia.org/wiki/Cross-origin_resource_sharing – RiggsFolly

回答

2

在URL傳球和你的腳本請求的URL在你所在的當前域中,當你缺少http協議

試試這個:

$.ajax({ 

    url  : "http://11.1.35.12/Kibana/mytelemetry.php", 
    cache : false, 
    data : ({ 
        DshBrdName : strFullDashBoardName, 
        DshBrdID : currentDashboard, 
        r   : Math.random() 
       }), 
    success : function(data, textStatus, jQxhr){ 
        //alert(textStatus); 
       }, 
    error : function(jqXHR, textStatus, errorThrown){ 
        //alert(textStatus); 
        alert(errorThrown); 
       }, 
    type : "POST" 
}); 

在那旁邊,你必須在您的php腳本中添加Access-Control-Allow-Origin標題

+1

您能否讓我知道我需要添加到我的PHP腳本中的標題? –

+0

最簡單的方法是在你的腳本中添加一行'header('Access-Control-Allow-Origin:*');''。最好在開始時,因爲你不能在發送響應之後設置標題(比如'echo'或'var_dump()')。此外,你可以(也可能應該)用你的域名(無協議)替換'*'標誌。 [MDN](https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS)上有很好的解讀。 – Skysplit