[英]Pinterest pins through HTML/JavaScript
以下是正在使用的腳本:
<script type="text/javascript">
function getresponse1()
{
var xmlHttp = new XMLHttpRequest();
xmlHttp.open( "GET", "https://widgets.pinterest.com/v3/pidgets/pins/info/?pin_ids="+{Pin ID});
alert(xmlHttp.status);
var data=xmlHttp.responseText;
var jsonResponse = JSON.parse(data);
var pin_url="www.pinterest.com/pin/"+pin_id+"/";
var page_name=(jsonResponse["data"][0].pinner.full_name);
alert(page_name);
}
</script>
每當調用XMLHttpRequest()
方法時,返回的狀態始終為0,而xmlHttp.responseText
為空。
但是,當在瀏覽器中打開鏈接時,響應是正確的,並且具有引腳的所有信息。
編輯:
也嘗試實現跨域。 但是狀態返回0。新腳本:
<script type="text/javascript">
function getresponse1()
{
var xhr = new XMLHttpRequest();
var url="https://widgets.pinterest.com/v3/pidgets/pins/info/?pin_ids=308074430730714588";
if ("withCredentials" in xhr) {
xhr.open("GET", url, true);
} else if (typeof XDomainRequest != "undefined") {
xhr = new XDomainRequest();
xhr.open(method, url);
} else {
xhr = null;
}
alert(xhr.status);
var data=xhr.responseText;
}
</script>
請讓我知道我在哪里犯錯。 提前致謝
注意:我使用的是Chrome瀏覽器
這是一個普遍的問題,因為您嘗試向其他站點( 跨域 )發出ajax請求。
這根本不是一個新問題,我認為在此已經作了很好的解釋,並且本文還提供了一些有關可能解決方案的想法。
AJAX是異步的,因此您的數據僅可通過某種回調獲得。
xhr.onload = function() {
if (xhr.status >= 200 && xhr.status < 400) {
var data = JSON.parse(request.responseText);
}
};
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.