2016-01-04 40 views
1

如果一個程序可能爲JSONP調用創建多個<script>元素,在添加更多元素之前刪除舊元素是否是一種好習慣?爲什麼?正在刪除「舊的」JSONP腳本標記是一種很好的做法嗎?

將創建的元素保存在變量中不是我的選擇。

如果刪除以前的調用,結果可以看這樣的末尾(或由一千次相乘):

<script src="https://example.com/script1"></script> 
<script src="https://example.com/script2"></script> 
<script src="https://example.com/script3"></script> 

但是,如果你做刪除以前的電話,有必要爲腳本設置id

<script id="jsonp-call" src="https://example.com/script1"></script> 
<!-- Then it'll become --> 
<script id="jsonp-call" src="https://example.com/script2"></script> 
<!-- And after that --> 
<script id="jsonp-call" src="https://example.com/script3"></script> 
+1

我不確定在2016年使用JSONP通常是不錯的做法 –

+1

@DenysSéguret您建議如何避免類似CORS相關問題的其他技術? – Hewbot

+1

@Hewbot:這不是CORS相關的問題,它是CORS([跨源資源共享](http://www.w3.org/TR/access-control/))有時可能與SOP相關的問題是答案。理想情況下,只有當你不能使用CORS時,才使用JSONP,而只有**和一個非常值得信賴的其他域。 –

回答

1

由於script標記純粹是一種用於JSONP的傳輸機制,因此一旦它完成其工作,我就會將其清除:在JSONP回調中,或超時。所以我不會讓他們躺在身邊,我不會等到下一次清理前一個電話。

相關問題