Users

将一个OAuth2身份

POST

将一个OAuth2身份(OAuth2 identity)加给用户,用户可以以此身份登录。你需要将一个OAuth代码或者准入指令(access token)发送到这个端口。 1. 如果没有获得准入指令(access token)的话,系统会使用OAuth2指令URL(OAuth2 token URL)来交换获得的代码,以此获得准入指令(access token)。 2. 然后系统会在你的服务上使用查找URL(lookup URL)爱你的通过准入指令(access token) (改指令可能是你之前给予的,或者是在第一步中获得的)来查找这名用户。 并预计获得一个回应一个id属性的JSON对象。 3. 之后系统将保存用户id到我们的用户数据库中,作为一个新的OAuthIdentity. 在这个示例中, 我们用准入指令(access token)(1234)来call你的查找网址(lookup URL)(比方说是 https://oauth.provider/user?t=<%= accessToken %>)然后查找网址(lookup URL)返回{ id: 'abcd' },我们已经将这个用户储存到我们的数据库中了。

Path parameters

handlestringRequired

文件中的 _id 或者 slug.

Request

This endpoint expects an object.
provider
stringRequired
你的授权提供者 ID (OAuth Provider ID)。
accessToken
stringOptional

将传输查询网址得到用户ID。如果没有code(“代码”)需要这一项。

code
stringOptional

将传输授权指令终点得到令牌。如果没有accessToken(“访问令牌”)需要这一项。

Response

This endpoint returns an object
_id
stringOptional
email
stringOptional
name
stringOptional
slug
stringOptional
role
stringOptional
stats
objectOptional
oAuthIdentities
list of objectsOptional
subscription
objectOptional
license
objectOptional
POST
$curl -X POST https://koudashijie.com/api/users/%3Ahandle/o-auth-identities \
> -H "Content-Type: application/json" \
> -u "<username>:<password>" \
> -d '{
> "provider": "string"
>}'
Response
1{
2 "_id": "string",
3 "email": "string",
4 "name": "string",
5 "slug": "string",
6 "role": "string",
7 "stats": {
8 "gamesCompleted": 1,
9 "concepts": {
10 "string": 1
11 },
12 "playTime": 1
13 },
14 "oAuthIdentities": [
15 {
16 "provider": "string",
17 "id": "string"
18 }
19 ],
20 "subscription": {
21 "ends": "string",
22 "active": true
23 },
24 "license": {
25 "ends": "string",
26 "active": true
27 }
28}