mirror of
https://github.com/supabase/supabase.git
synced 2026-10-05 09:25:06 +03:00
updates the auth docs with server-side requests (#3664)
This commit is contained in:
1 parent
8399173528
commit
4c79cd42b4
8 files changed
+7591
-6609
No files matched your search
@@ -39,7 +39,7 @@ module.exports = {
|
||||
{
|
||||
type: 'category',
|
||||
label: 'Filters',
|
||||
items: ['reference/dart/using-filters', 'reference/dart/filter', 'reference/dart/or', 'reference/dart/not', 'reference/dart/match', 'reference/dart/eq', 'reference/dart/neq', 'reference/dart/gt', 'reference/dart/gte', 'reference/dart/lt', 'reference/dart/lte', 'reference/dart/like', 'reference/dart/ilike', 'reference/dart/is_', 'reference/dart/in_', 'reference/dart/contains', 'reference/dart/containedby', 'reference/dart/rangelt', 'reference/dart/rangegt', 'reference/dart/rangegte', 'reference/dart/rangelte', 'reference/dart/rangeadjacent', 'reference/dart/overlaps', 'reference/dart/textsearch'],
|
||||
items: ['reference/dart/using-filters', 'reference/dart/or', 'reference/dart/not', 'reference/dart/match', 'reference/dart/eq', 'reference/dart/neq', 'reference/dart/gt', 'reference/dart/gte', 'reference/dart/lt', 'reference/dart/lte', 'reference/dart/like', 'reference/dart/ilike', 'reference/dart/is_', 'reference/dart/in_', 'reference/dart/contains', 'reference/dart/containedby', 'reference/dart/rangelt', 'reference/dart/rangegt', 'reference/dart/rangegte', 'reference/dart/rangelte', 'reference/dart/rangeadjacent', 'reference/dart/overlaps', 'reference/dart/textsearch', 'reference/dart/filter'],
|
||||
collapsed: true,
|
||||
}
|
||||
],
|
||||
|
||||
@@ -9,7 +9,7 @@ module.exports = {
|
||||
{
|
||||
type: 'category',
|
||||
label: 'Auth',
|
||||
items: ['reference/javascript/auth-signup', 'reference/javascript/auth-signin', 'reference/javascript/auth-signout', 'reference/javascript/auth-session', 'reference/javascript/auth-user', 'reference/javascript/auth-update', 'reference/javascript/auth-onauthstatechange', 'reference/javascript/reset-password-email', 'reference/javascript/delete-user'],
|
||||
items: ['reference/javascript/auth-signup', 'reference/javascript/auth-signin', 'reference/javascript/auth-signout', 'reference/javascript/auth-session', 'reference/javascript/auth-user', 'reference/javascript/auth-update', 'reference/javascript/auth-setauth', 'reference/javascript/auth-onauthstatechange', 'reference/javascript/reset-password-email', 'reference/javascript/delete-user'],
|
||||
collapsed: true,
|
||||
},
|
||||
{
|
||||
@@ -39,7 +39,7 @@ module.exports = {
|
||||
{
|
||||
type: 'category',
|
||||
label: 'Filters',
|
||||
items: ['reference/javascript/using-filters', 'reference/javascript/filter', 'reference/javascript/or', 'reference/javascript/not', 'reference/javascript/match', 'reference/javascript/eq', 'reference/javascript/neq', 'reference/javascript/gt', 'reference/javascript/gte', 'reference/javascript/lt', 'reference/javascript/lte', 'reference/javascript/like', 'reference/javascript/ilike', 'reference/javascript/is', 'reference/javascript/in', 'reference/javascript/contains', 'reference/javascript/containedby', 'reference/javascript/rangelt', 'reference/javascript/rangegt', 'reference/javascript/rangegte', 'reference/javascript/rangelte', 'reference/javascript/rangeadjacent', 'reference/javascript/overlaps', 'reference/javascript/textsearch'],
|
||||
items: ['reference/javascript/using-filters', 'reference/javascript/or', 'reference/javascript/not', 'reference/javascript/match', 'reference/javascript/eq', 'reference/javascript/neq', 'reference/javascript/gt', 'reference/javascript/gte', 'reference/javascript/lt', 'reference/javascript/lte', 'reference/javascript/like', 'reference/javascript/ilike', 'reference/javascript/is', 'reference/javascript/in', 'reference/javascript/contains', 'reference/javascript/containedby', 'reference/javascript/rangelt', 'reference/javascript/rangegt', 'reference/javascript/rangegte', 'reference/javascript/rangelte', 'reference/javascript/rangeadjacent', 'reference/javascript/overlaps', 'reference/javascript/textsearch', 'reference/javascript/filter'],
|
||||
collapsed: true,
|
||||
}
|
||||
],
|
||||
|
||||
+3764
-3303
File diff suppressed because it is too large.
Load diff
+1020
-919
File diff suppressed because it is too large.
Load diff
+1404
-1089
File diff suppressed because it is too large.
Load diff
+407
-540
File diff suppressed because it is too large.
Load diff
+933
-755
File diff suppressed because it is too large.
Load diff
@@ -37,6 +37,7 @@ info:
|
||||
- auth.session()
|
||||
- auth.user()
|
||||
- auth.update()
|
||||
- auth.setAuth()
|
||||
- auth.onAuthStateChange()
|
||||
- Reset Password (Email)
|
||||
- Delete User
|
||||
@@ -450,6 +451,65 @@ pages:
|
||||
})
|
||||
```
|
||||
|
||||
auth.setAuth():
|
||||
$ref: '@supabase/gotrue-js."GoTrueClient".GoTrueClient.setAuth'
|
||||
examples:
|
||||
- name: Basic example.
|
||||
description: This is most useful on server-side functions where you cannot log the user in, but have access to the user's access token.
|
||||
isSpotlight: true
|
||||
js: |
|
||||
```js
|
||||
function apiFunction(req, res) {
|
||||
// Assuming the access token was sent as a header "X-Supabase-Auth"
|
||||
const { access_token } = req.get('X-Supabase-Auth')
|
||||
|
||||
// You can now use it within a Supabase Client
|
||||
const supabase = createClient("https://xyzcompany.supabase.co", "public-anon-key")
|
||||
const { user, error } = supabase.auth.setAuth(access_token)
|
||||
|
||||
// This client will now send requests as this user
|
||||
const { data } = await supabase.from('your_table').select()
|
||||
}
|
||||
```
|
||||
- name: With Express.
|
||||
description: This is most useful on server-side functions where you cannot log the user in, but have access to the user's access token.
|
||||
isSpotlight: true
|
||||
js: |
|
||||
```js
|
||||
|
||||
/**
|
||||
* Make a request from the client to your server function
|
||||
*/
|
||||
async function makeApiRequest() {
|
||||
const token = newClient.session()?.access_token
|
||||
|
||||
await fetch('https://example.com/withAuth', {
|
||||
method: 'GET',
|
||||
withCredentials: true,
|
||||
credentials: 'include',
|
||||
headers: {
|
||||
'Content-Type': 'application/json'
|
||||
'Authorization': bearer, // Your own auth
|
||||
'X-Supabase-Auth': token, // Set the Supabase user
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* Use the Auth token in your server-side function.
|
||||
*/
|
||||
async function apiFunction(req, res) {
|
||||
const { access_token } = req.get('X-Supabase-Auth')
|
||||
|
||||
// You can now use it within a Supabase Client
|
||||
const supabase = createClient("https://xyzcompany.supabase.co", "public-anon-key")
|
||||
const { user, error } = supabase.auth.setAuth(access_token)
|
||||
|
||||
// This client will now send requests as this user
|
||||
const { data } = await supabase.from('your_table').select()
|
||||
}
|
||||
```
|
||||
|
||||
auth.onAuthStateChange():
|
||||
$ref: '@supabase/gotrue-js."GoTrueClient".GoTrueClient.onAuthStateChange'
|
||||
examples:
|
||||
|
||||
Reference in new issue
Block a user