2017-02-21 25 views
0

在我們的AngularJS應用程序,我有一個形象的網址,如:的JavaScript平的URL,並得到重定向的URL

http://example.com/images/get/785746378 

的問題是這個重定向我到阻塞另一個網址:

http://another-example.com/images/f/gs/s/your-image.jpg 

所以圖像不工作,但如果我更換域名,所以它是:

http://example.com/images/f/gs/s/your-image.jpg 

它工作正常。

所以我希望能夠ping JavaScript中的URL,並找出重定向的URL是什麼,將其添加到之前改變域,使其作品在我的img src

+0

你有試過什麼嗎?也許向網址發送ajax請求? –

+0

它返回什麼HEADERS?嘗試它通過XHR HEAD檢測 – ZiTAL

+0

看到這個答案http://stackoverflow.com/questions/11698178/how-can-i-get-the-redirect-url-using-javascript – Dwhitz

回答

0

這應該很好地工作:

var xhr = new XMLHttpRequest(); 
xhr.onreadystatechange = function(response) { 
    var xhr = response.target; 
    if (xhr.readyState === 4 && xhr.status === 302) { 
    var redirectURL = xhr.location; 
    var imageURL = redirectURL.replace('http://another-example','http://example'); 
    // change your image src here by imageURL 
    } 
} 
xhr.open('GET', 'http://example.com/images/get/785746378', true); 
xhr.send(null); 
0

從你的文章中不清楚你如何請求圖像。假設您使用AJAX/$ HTTP請求它:

您可以發送HEAD請求原始URL。如果服務器上允許HTTP HEAD請求,您將在響應頭中獲得新的location的HTTP 302響應。您可以對此location執行所需的操作,併發送GET請求獲取圖像的新URL。