files/en-us/web/api/workerglobalscope/fetch/index.md
{{APIRef("Fetch API")}}{{AvailableInWorkers("worker")}}
The fetch() method of the {{domxref("WorkerGlobalScope")}} interface starts the process of fetching a resource from the network, returning a promise that is fulfilled once the response is available.
The promise resolves to the {{domxref("Response")}} object representing the response to your request.
A fetch() promise only rejects when the request fails, for example, because of a badly-formed request URL or a network error.
A fetch() promise does not reject if the server responds with HTTP status codes that indicate errors (404, 504, etc.).
Instead, a then() handler must check the {{domxref("Response.ok")}} and/or {{domxref("Response.status")}} properties.
The fetch() method is controlled by the connect-src directive of Content Security Policy rather than the directive of the resources it's retrieving.
[!NOTE] The
fetch()method's parameters are identical to those of the {{domxref("Request.Request","Request()")}} constructor.
fetch(resource)
fetch(resource, options)
resource
options {{optional_inline}}
A {{jsxref("Promise")}} that resolves to a {{domxref("Response")}} object.
AbortError {{domxref("DOMException")}}
NotAllowedError {{domxref("DOMException")}}
fetch() request was made with browsingTopics: true.See {{domxref("Window.fetch", "fetch()")}} for examples.
{{Specifications}}
{{Compat}}