githubauthreq
Authorise GitHub API requests with the appropriate environment variables
Usage
Complete API Documentation.
Fetch
Using environment variables:
import { getHeaders } from 'githubauthreq'
fetch('https://api.github.com/user', {
headers: getHeaders(),
})
import { getAuthHeader } from 'githubauthreq'
fetch('https://api.github.com/user', {
headers: {
Authorization: getAuthHeader(),
Accept: 'application/vnd.github.v3+json',
},
})
Query String
Using environment variables:
import { getParams } from 'githubauthreq'
fetch(`https://api.github.com/user?${getParams()}`, {
headers: {
Accept: 'application/vnd.github.v3+json',
},
})
Manual
Both getAuthHeader
and getParams
accept an object containing either:
GITHUB_ACCESS_TOKEN
GITHUB_CLIENT_ID
+ GITHUB_CLIENT_SECRET
By default they will use process.env
if it exists
Redaction
When using query string, you should redact the error message to prevent credentials from leaking in log files:
import { getParams, redactParams } from 'githubauthreq'
fetch(`https://api.github.com/user?${getParams()}`, {
headers: {
Accept: 'application/vnd.github.v3+json',
},
}).catch((err) => console.error(redactParams(err.message)))
Install
- Install:
npm install --save githubauthreq
- Import:
import * as pkg from ('githubauthreq')
- Require:
const pkg = require('githubauthreq')
<script type="module">
import * as pkg from '//cdn.pika.dev/githubauthreq/^5.1.0'
</script>
<script type="module">
import * as pkg from '//unpkg.com/githubauthreq@^5.1.0'
</script>
<script type="module">
import * as pkg from '//dev.jspm.io/githubauthreq@5.1.0'
</script>
This package is published with the following editions:
githubauthreq/source/index.ts
is TypeScript source code with Import for modulesgithubauthreq/edition-browsers/index.js
is TypeScript compiled against ESNext for web browsers with Import for modulesgithubauthreq
aliases githubauthreq/edition-es2018/index.js
githubauthreq/edition-es2018/index.js
is TypeScript compiled against ES2018 for Node.js with Require for modules
History
Discover the release history by heading on over to the HISTORY.md
file.
Contribute
Discover how you can contribute by heading on over to the CONTRIBUTING.md
file.
Backers
Maintainers
These amazing people are maintaining this project:
No sponsors yet! Will you be the first?
Contributors
These amazing people have contributed code to this project:
Discover how you can contribute by heading on over to the CONTRIBUTING.md
file.
License
Unless stated otherwise all works are:
- Copyright © 2018+ Benjamin Lupton
and licensed under: