aboutsummaryrefslogtreecommitdiff
path: root/files/zh-tw/web/api/fetch_api/index.html
diff options
context:
space:
mode:
authorPeter Bengtsson <mail@peterbe.com>2020-12-08 14:43:23 -0500
committerPeter Bengtsson <mail@peterbe.com>2020-12-08 14:43:23 -0500
commit218934fa2ed1c702a6d3923d2aa2cc6b43c48684 (patch)
treea9ef8ac1e1b8fe4207b6d64d3841bfb8990b6fd0 /files/zh-tw/web/api/fetch_api/index.html
parent074785cea106179cb3305637055ab0a009ca74f2 (diff)
downloadtranslated-content-218934fa2ed1c702a6d3923d2aa2cc6b43c48684.tar.gz
translated-content-218934fa2ed1c702a6d3923d2aa2cc6b43c48684.tar.bz2
translated-content-218934fa2ed1c702a6d3923d2aa2cc6b43c48684.zip
initial commit
Diffstat (limited to 'files/zh-tw/web/api/fetch_api/index.html')
-rw-r--r--files/zh-tw/web/api/fetch_api/index.html84
1 files changed, 84 insertions, 0 deletions
diff --git a/files/zh-tw/web/api/fetch_api/index.html b/files/zh-tw/web/api/fetch_api/index.html
new file mode 100644
index 0000000000..2cd6f23d22
--- /dev/null
+++ b/files/zh-tw/web/api/fetch_api/index.html
@@ -0,0 +1,84 @@
+---
+title: Fetch API
+slug: Web/API/Fetch_API
+translation_of: Web/API/Fetch_API
+---
+<div>{{DefaultAPISidebar("Fetch API")}}</div>
+
+<div>Fetch API 提供了一個能獲取包含跨網路資源在的資源介面。它有點像我們所熟悉的 {{domxref("XMLHttpRequest")}} ,但這個新的 API 提供了更強更彈性的功能。</div>
+
+<h2 id="概念與應用">概念與應用</h2>
+
+<p>Fetch 提供了 {{domxref("Request")}} 與 {{domxref("Response")}} 物件,還有其他牽涉網路請求的通用定義。這能讓他們在需要的時候被使用到,不管是 service worker、Cache API、還是其他處理或更動請求回應的相類事物、或是任何需要產生有序化產生回應的用例(use case)。</p>
+
+<p>它也提供了諸如 CORS 與 HTTP origin 標頭語意的分散定義,能取代分散的定義。</p>
+
+<p>要發動請求並取得資源的話,請使用 {{domxref("GlobalFetch.fetch")}} 方法。他實作了數種介面,並指定了 {{domxref("Window")}} 與 {{domxref("WorkerGlobalScope")}},使它可以在任何想獲取資源的環境中使用。</p>
+
+<p><code>fetch()</code> 方法有一個強制性的參數,就是要取得資源的網址。該方法會回傳一個不論請求成敗,都會 resolve 的 promise {{domxref("Response","回應")}}。你也能選擇性地使用第二個稱為 <code>init</code> 的物件參數(請參見 {{domxref("Request")}})。</p>
+
+<p>當 {{domxref("Response")}} 檢索後,在請求體裡面會定義一些請求體為何,還有要如何處理的方法(請參見 {{domxref("Body")}})。</p>
+
+<p>你也可以直接用 {{domxref("Request.Request","Request()")}} 與 {{domxref("Response.Response","Response()")}} 建構子來建立請求與回應,不過你不太可能直接使用他,反而更可能是以其他 API 行動的結果為形式存在。(例如來自 service worker 的 {{domxref("FetchEvent.respondWith")}})</p>
+
+<div class="note">
+<p><strong>注意</strong>:你可以在<a href="/zh-TW/docs/Web/API/Fetch_API/Using_Fetch">使用 Fetch</a>深入理解 Fetch,並在<a href="/zh-TW/docs/Web/API/Fetch_API/Basic_concepts">Fetch 的基本概念</a>文章內理解概念。</p>
+</div>
+
+<h3 id="中斷一次_Fetch">中斷一次 Fetch</h3>
+
+<p>各家瀏覽器已經開始加入 {{DOMxRef("AbortController")}} 與 {{DOMxRef("AbortSignal")}} 介面(也就是 Abort API)的實驗性支援,讓 Fetch 和 XHR 這類的操作在完成前可以被中斷。詳情請參閱相關介面的文件。</p>
+
+<h2 id="Fetch_介面">Fetch 介面</h2>
+
+<dl>
+ <dt>{{DOMxRef("WindowOrWorkerGlobalScope.fetch()")}}</dt>
+ <dd>用於取得資源的 <code>fetch()</code> 方法。</dd>
+ <dt>{{domxref("Headers")}}</dt>
+ <dd>代表請求/回應標頭,讓你能 query 並針對結果不同,採取不同行動。</dd>
+ <dt>{{domxref("Request")}}</dt>
+ <dd>代表資源請求。</dd>
+ <dt>{{domxref("Response")}}</dt>
+ <dd>代表資源請求的回應。</dd>
+</dl>
+
+<h2 id="Fetch_mixin">Fetch mixin</h2>
+
+<dl>
+ <dt>{{domxref("Body")}}</dt>
+ <dd>提供請求/回應訊息體的相關方法,能宣告內容的類別為何,以及該如何處理。</dd>
+</dl>
+
+<h2 id="規範">規範</h2>
+
+<table class="standard-table">
+ <tbody>
+ <tr>
+ <th scope="col">規範</th>
+ <th scope="col">狀態</th>
+ <th scope="col">註解</th>
+ </tr>
+ <tr>
+ <td>{{SpecName('Fetch')}}</td>
+ <td>{{Spec2('Fetch')}}</td>
+ <td>初始定義</td>
+ </tr>
+ </tbody>
+</table>
+
+<h2 id="瀏覽器相容性">瀏覽器相容性</h2>
+
+<div class="hidden">The compatibility table on this page is generated from structured data. If you'd like to contribute to the data, please check out https://github.com/mdn/browser-compat-data and send us a pull request.</div>
+
+<p>{{Compat("api.WindowOrWorkerGlobalScope.fetch")}}</p>
+
+<h2 id="參見">參見</h2>
+
+<ul>
+ <li><a href="/zh-TW/docs/Web/API/Fetch_API/Using_Fetch">使用 Fetch</a></li>
+ <li><a href="/zh-TW/docs/Web/API/ServiceWorker_API">ServiceWorker API</a></li>
+ <li><a href="/zh-TW/docs/Web/HTTP/Access_control_CORS">HTTP access control (CORS)</a></li>
+ <li><a href="/zh-TW/docs/Web/HTTP">HTTP</a></li>
+ <li><a href="https://github.com/github/fetch">Fetch polyfill</a></li>
+ <li><a href="/zh-TW/docs/Web/API/Fetch_API/Basic_concepts">Fetch 基本概念</a></li>
+</ul>