2014-11-05 138 views
0

我有這個問題...我正在從JSON文件加載名稱的項目(這不重要)。鏈接重定向後可以加載圖片/ png數據嗎?

事情是我用維基特殊:文件路徑鏈接來獲取我的圖像。所以當我輸入我的瀏覽器時:http://2007.runescape.wikia.com/wiki/Special:Filepath/Abyssal_head.png它返回這個圖像鏈接:http://img1.wikia.nocookie.net/__cb20140108135954/2007scape/images/0/0f/Abyssal_head.png

有沒有辦法解決這個重定向,所以我可以正確加載一個ajax調用? 每當我嘗試這樣做第一個鏈接我得到這個錯誤(這是正常的,因爲它無法找到正確的頭,我認爲):

XMLHttpRequest cannot load http://2007.runescape.wikia.com/wiki/Special:Filepath/Abyssal_head.png. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'null' is therefore not allowed access. 

所有幫助是值得歡迎的。

+1

你想要做什麼? – 2014-11-05 08:34:31

+0

查看圖像,你可以直接在標籤中給出鏈接。像這樣 所以你不用擔心重定向。圖片將會顯示 – shabeer 2014-11-05 08:35:04

+0

嗨Shabeer!是的,我知道這有效,但它困擾我。我想加載所有圖像,將它們放入數組或對象中,並在加載所有圖像時顯示它們。有我的問題 – Nicholas 2014-11-05 09:05:26

回答

1

Special:Filepath對於鏈接到wiki內的文件很有用,但是如果您想以編程方式獲取路徑,使用API​​會給您更多的靈活性。要獲得文件路徑,只需使用prop=imageinfoiiprop=url參數,如this

api.php?action=query &titles=Image:Abyssal_head.png &prop=imageinfo &iiprop=url &format=json

這會給你一個JSON對象這樣

{"query": { 
    "normalized":..., 
    "pages":{ 
     "28052":{ 
      "pageid":28052, 
      "ns":6, 
      "title":"File:Abyssal head.png", 
      "imagerepository":"local", 
      "imageinfo":[ 
       { 
        "url":"http:\/\/img1.wikia.nocookie.net\/__cb20140108135954\/2007scape\/images\/0\/0f\/Abyssal_head.png", 
        "descriptionurl":"http:\/\/2007.runescape.wikia.com\/wiki\/File:Abyssal_head.png" 
       } 
      ] 
     } 
    } 
}} 

...在query.pages.{PAGE}.imageinfo.url您想要的網址

您可以在多個文件中查詢多個文件,將它們的標題與|分開。

有關完整文檔,請參閱2007.runescape.wikia.com/api.php

+0

謝謝你!這真的很有用!現在我可以在顯示屏幕之前加載所有圖像! – Nicholas 2014-11-18 14:26:43