是否可以在沒有下載文件數據的情況下從XMLHttpRequest
獲取響應頭文件?如何只從XMLHttpRequest獲取響應頭文件
回答
如果您發出請求的服務器支持該方法,則聽起來像您想要的是發出HTTP HEAD請求。請參閱HTTP spec。
例如比較curl -v -X GET https://github.com
和curl -v -X HEAD https://github.com
的輸出。
使用JavaScript(如在問題中指定)簡單地使用通過AJAX一個head
請求:
var xhr = new XMLHttpRequest();
var method = 'head';
var url = 'https://www.example.com/';
xhr.open(method,url,true);
xhr.send(null);
xhr.onreadystatechange = function()
{
if (xhr.readyState === 4)
{
console.log(xhr.getAllResponseHeaders())
}
}
當然這會導致瀏覽器也從服務器獲取整個HTTP響應。這不回答OP的問題。它只是向他們展示瞭如何從JS中的響應對象獲取標題數據。原始問題要求獲取響應標題而不提取內容 –
@StephenIerodiaconou **顯然**你在代碼中沒有*實際*看*,並注意到'method' **參數**,它是故意作爲參數一個原因。沒關係,這不像在編程或任何事情時注意一些重要的事情。 – John
抱歉不能確定你的意思,你說的正確答案是根據你的答案使用HTTP POST嗎?或者,如果讀者應該明白,如果他們想向服務器表明他們不需要完整的響應主體,那麼上面的代碼中的HTTP'method'應該改爲'head'?在你的例子中,POSTing仍然會返回一個正文(假設服務器爲給定的端點創建一個正文)。然而,HEAD請求的語義向服務器表明服務器不響應正文(假設端點支持HEAD)。如果解釋,很樂意刪除downvote。 –
- 1. 從NSMutableURLRequest獲取響應頭文件
- 2. 從PHP獲取頭文件cURL響應
- 3. 如何獲取XMLHttpRequest中的響應URL?
- 4. 如何從ActiveResource獲取響應頭?
- 5. 如何從HttpURLConnection的響應頭獲取文件名?
- 6. 在XMLHttpRequest中獲取SENT頭文件
- 7. Laravel 4 - Javascript獲取響應頭文件
- 8. 如何獲取請求的全文(不是響應)頭文件?
- 9. 如何從Ajax/xmlhttprequest調用的響應中獲取Cookie
- 10. 從XMLHttpRequest對象響應創建文件
- 11. 如何響應XMLHttpRequest
- 12. 如何從.NET中的WebBrowser控件獲取響應頭?
- 13. 如何從xmlhttprequest獲取html
- 14. 如何使用Glide和OkHttp獲取http響應頭文件
- 15. 如何在Selenium中獲取響應頭文件?
- 16. Restangular:如何獲取HTTP響應頭?
- 17. Swift,我如何從RestKit獲得響應頭文件?
- 18. 如何獲得XMLHttpRequest的響應?
- 19. 從jQuery響應頭獲取圖像文件大小
- 20. 從LWP獲取原始響應頭文件?
- 21. 在Angular中從HttpClient post請求獲取響應頭文件?
- 22. Angular 4從API響應中獲取頭文件
- 23. 從WebService調用中獲取響應頭文件?
- 24. 從排隊的響應中獲取頭文件
- 25. C#模擬xmlhttprequest並獲取json響應
- 26. 如何從Ajax響應取出頭
- 27. 從響應頭獲取位置
- 28. 從HTTP標頭獲取響應
- 29. 從HTTP標頭響應獲取日期
- 30. 獲取index.html的響應頭
向下投用於接受一個服務器側回答爲客戶端的問題。 – John
這個答案幫助我解決了4年前的問題,似乎仍然沒有客戶端解決方案。如果你有,請分享它,我會接受你的答案。 – Anton