我試著在localhost上使用fetch,但它沒有作業。
以下是我的代碼:
<!DOCTYPEhtml>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0" >
<title>檔案</title>
</head>
<body>
<script>
fetch("hi.txt").then(function( response){
response.text().then(function(text){
alert(text)
})
})
</script>
</body>
</html>
hi.txt檔案和腳本檔案在同一個檔案夾里。
下面的錯誤顯示在控制臺中:
(~~~)是路徑 uj5u.com熱心網友回復: 由于你的URL是相對的(它只是 在進行網路開發時,我們需要對網站進行管理,以保證網站的安全性。
在進行 Web 開發時,您希望通過服務器行程進行作業,因為直接從檔案系統加載的頁面與從服務器加載的頁面在一些有時很微妙的方面表現得不同。
有幾種方法可以做到這一點:
標籤:index.html。
index.html:12 Fetch API cannot load file://C:/~~~~/hi.txt. URL方案 "file "不被支持。"hi.txt"),它是針對代碼所運行的頁面的URL來解決的。在你的案例中,這似乎是file://something - 也就是說,你直接從你的檔案系統中加載了一個檔案,而不是通過從服務器請求它。Chrome不允許從file方案中獲取。file方案的起源是null。Chrome 團隊對相同原點策略的解釋是,任何原點,甚至是它本身,都不應該與null匹配。(在我看來,這是一個合理的解釋,但意見可能會有所不同。) npm(和Node.js)為你設定簡單的專案,你可以使用一個命令在本地以開發模式構建和運行該專案。
