@fastly/as-fetch

0.4.1 • Public • Published

@fastly/as-fetch

npm version npm downloads per month

Experimental AssemblyScript library to implement JavaScript's Fetch API interface.

Installation

@fastly/as-fetch is available as a npm package. You can install @fastly/as-fetch in your AssemblyScript project by running:

npm install --save @fastly/as-fetch

Quick Start

@fastly/as-fetch is an implementation, or port, of the Fetch API, similar to the Node package node-fetch. @fastly/as-fetch is useful for creating and modifying objects (e.g., Request, Response, Header).. However, because of the current limitations of WebAssembly, and WASI, sending requests is not supported. In the meantime, you will probably want to use or create another service or library that utilizes the objects from as-fetch in your host platform. For example, @fastly/as-compute uses @fastly/as-fetch for Fastly's Compute@Edge platform to create, modify, send, and receive HTTP requests.

Below is an example request made with the @fastly/as-fetch API:

// Import `as-fetch`'s Fetch API-like Headers and Request Classes.
import { Headers, Request } from "@fastly/as-fetch";

// Create some headers, and specify we will be sending JSON with a Content-type HTTP Header.
let headers = new Headers();
headers.set("Content-type", "application/json");

// Create a POST HTTP Request, with a JSON UTF8 string body, with the headers we created.
const request = new Request("https://example.com", {
  method: "POST",
  // Encode to UTF8 Array Buffer using AssemblyScript Standard Library.
  body: String.UTF8.encode('{"foo": "bar"}'),
  headers: headers,
});

// Do something with the request ...

Reference API

The Reference API documentation can be found in the docs/ directory.

Changelog

The changelog can be found here.

Security

If you happen to find any security issues, please see the Fastly Security Reporting Page, or feel free to send an email to: security@fastly.com

We plan to disclose any found security vulnerabilites per the npm security reporting guidelines. Note that communications related to security issues in Fastly-maintained OSS as described here are distinct from Fastly Security Advisories.

License

Apache-2.0 WITH LLVM-exception

Readme

Keywords

none

Package Sidebar

Install

npm i @fastly/as-fetch

Weekly Downloads

94

Version

0.4.1

License

SEE LICENSE IN LICENSE

Unpacked Size

53.5 kB

Total Files

25

Last publish

Collaborators

  • therealdoramatadora
  • harmony7
  • triblondon
  • jakechampion
  • fastly-compute-at-edge