外观
Auth
约 2107 字大约 7 分钟
2025-08-01
@candriajs/git-neko-kit / github / Auth
类: Auth
定义于: models/platform/github/auth.ts:36
GitHub OAuth 授权管理类
提供完整的GitHub OAuth 2.0授权流程管理,包括:
- 生成授权链接
- 通过授权码(code)获取访问令牌(access_token)
- 检查访问令牌状态
- 刷新访问令牌
继承
构造函数
构造函数
new Auth(
base
):Auth
定义于: models/platform/github/auth.ts:37
参数
base
返回
Auth
重写了
属性
api_url
api_url:
string
定义于: models/platform/github/client.ts:79
继承自
app
app:
App
定义于: models/platform/github/client.ts:67
继承自
auth
auth:
Auth
定义于: models/platform/github/client.ts:68
继承自
base_url
base_url:
string
定义于: models/platform/github/client.ts:78
继承自
Client_ID?
readonly
optional
Client_ID:null
|string
定义于: models/platform/github/client.ts:83
继承自
Client_Secret?
readonly
optional
Client_Secret:null
|string
定义于: models/platform/github/client.ts:84
继承自
commit
commit:
Commit
定义于: models/platform/github/client.ts:69
继承自
format
readonly
format:boolean
定义于: models/platform/github/client.ts:86
继承自
issue
issue:
Issue
定义于: models/platform/github/client.ts:73
继承自
jwtToken
jwtToken:
string
定义于: models/platform/github/client.ts:80
继承自
org
org:
Org
定义于: models/platform/github/client.ts:74
继承自
Private_Key?
readonly
optional
Private_Key:null
|string
定义于: models/platform/github/client.ts:82
继承自
pull_request
pull_request:
Pull_Request
定义于: models/platform/github/client.ts:75
继承自
repo
repo:
Repo
定义于: models/platform/github/client.ts:70
继承自
search
search:
Search
定义于: models/platform/github/client.ts:77
继承自
user
user:
User
定义于: models/platform/github/client.ts:71
继承自
userToken?
optional
userToken:null
|string
定义于: models/platform/github/client.ts:81
继承自
webhook
webhook:
WebHook
定义于: models/platform/github/client.ts:72
继承自
WebHook_Secret?
readonly
optional
WebHook_Secret:null
|string
定义于: models/platform/github/client.ts:85
继承自
workflow
workflow:
Workflow
定义于: models/platform/github/client.ts:76
继承自
访问器
is_app_client
Getter 签名
get is_app_client():
boolean
定义于: models/platform/github/client.ts:130
是否是App客户端
示例
const isAppClient = await client.is_app_client
-> true
返回
boolean
是否是App客户端
继承自
type
Getter 签名
get type():
GitType
定义于: models/platform/github/client.ts:117
获取Git平台类型
示例
const type = await client.type
-> 'github'
返回
Git平台类型,如: github,gitee
继承自
方法
check_token_status()
check_token_status(
options?
):Promise
<ApiResponseType
<CheckTokenResponseType
>>
定义于: models/platform/github/auth.ts:105
获取 token 的状态
参数
options?
获取 token 的参数
- options.access_token - Github 返回的 access_token 上一步
get_token_by_code
生成的 token
返回
Promise
<ApiResponseType
<CheckTokenResponseType
>>
返回 token 的状态
示例
const status = await auth.check_token_status({ access_token: 'access_token' })
console.log(status) // 输出token状态对象
***
### create\_auth\_link()
> **create\_auth\_link**(`state_id?`): `Promise`\<`string`\>
定义于: [models/platform/github/auth.ts:208](https://github.com/CandriaJS/git-neko-kit/blob/68e1dc12fd1bcb6fcbe1a2aa6869f49f3640b1b1/src/models/platform/github/auth.ts#L208)
生成Github App 授权链接
#### 参数
##### state\_id?
`string`
随机生成的 state_id,用于验证授权请求的状态,可选,默认不使用
#### 返回
`Promise`\<`string`\>
返回授权链接对象
#### 示例
```ts
const link = await auth.create_auth_link('state_id')
console.log(link) // https://github.com/login/oauth/authorize?client_id=<client_id>&state=<state_id>
delete()
delete(
path
,params
,data?
,customHeaders?
):Promise
<ApiResponseType
<any
>>
定义于: models/platform/github/client.ts:602
Github DELETE 请求方法
参数
path
string
请求路径
params
URL查询参数
null
| Record
<string
, string
>
data?
any
请求体数据
customHeaders?
Record
<string
, string
>
请求头,选项
返回
Promise
<ApiResponseType
<any
>>
请求结果
继承自
get()
get(
path
,parms?
,customHeaders?
):Promise
<ApiResponseType
<any
>>
定义于: models/platform/github/client.ts:455
Github GET 请求方法
参数
path
string
请求路径
parms?
any
请求参数
customHeaders?
Record
<string
, string
>
请求头,选项
返回
Promise
<ApiResponseType
<any
>>
请求结果
继承自
get_app()
get_app():
Promise
<App
>
定义于: models/platform/github/client.ts:177
获取App实例
返回
Promise
<App
>
App实例
示例
const app = await GitHubClient.get_app()
继承自
get_auth()
get_auth():
Promise
<Auth
>
定义于: models/platform/github/client.ts:191
获取Auth实例
返回
Promise
<Auth
>
Auth实例
示例
const auth = await GitHubClient.get_auth()
继承自
get_commit()
get_commit():
Promise
<Commit
>
定义于: models/platform/github/client.ts:205
获取Commit实例
返回
Promise
<Commit
>
Commit实例
示例
const commit = await GitHubClient.get_commit()
继承自
get_issue()
get_issue():
Promise
<Issue
>
定义于: models/platform/github/client.ts:219
获取Issue实例
返回
Promise
<Issue
>
Issue实例
示例
const issue = await GitHubClient.get_issue()
继承自
get_org()
get_org():
Promise
<Org
>
定义于: models/platform/github/client.ts:261
获取Org实例
返回
Promise
<Org
>
Org实例
示例
const org = await GitHubClient.get_org()
继承自
get_pull_request()
get_pull_request():
Promise
<Pull_Request
>
定义于: models/platform/github/client.ts:289
获取Pull_request实例
返回
Promise
<Pull_Request
>
Pull_request实例
示例
const pull_request = await GitHubClient.get_pull_request()
继承自
get_repo()
get_repo():
Promise
<Repo
>
定义于: models/platform/github/client.ts:233
获取Repo实例
返回
Promise
<Repo
>
Repo实例
示例
const repo = await GitHubClient.get_repo()
继承自
get_search()
get_search():
Promise
<Search
>
定义于: models/platform/github/client.ts:317
获取Search实例
返回
Promise
<Search
>
Search实例
示例
const search = await GitHubClient.get_search()
继承自
get_token_by_code()
get_token_by_code(
options
):Promise
<ApiResponseType
<TokenResponseType
>>
定义于: models/platform/github/auth.ts:55
通过 code 获取 token
参数
options
获取 token 的参数
- options.code - Github 返回的 code
返回
Promise
<ApiResponseType
<TokenResponseType
>>
返回 token
示例
const token = await auth.get_token_by_code({ code: 'code' })
-> { info: '获取'access_token: 'token', refresh_token: 'refresh_token' }
get_user()
get_user():
Promise
<User
>
定义于: models/platform/github/client.ts:247
获取User实例
返回
Promise
<User
>
User实例
示例
const user = await GitHubClient.get_user()
继承自
get_webhook()
get_webhook():
Promise
<WebHook
>
定义于: models/platform/github/client.ts:275
获取WebHook实例
返回
Promise
<WebHook
>
WebHook实例
示例
const webhook = await GitHubClient.get_webhook()
继承自
get_workflow()
get_workflow():
Promise
<Workflow
>
定义于: models/platform/github/client.ts:303
获取Workflow实例
返回
Promise
<Workflow
>
Workflow实例
示例
const workflow = await GitHubClient.get_workflow()
继承自
patch()
patch(
path
,params
,data
,customHeaders?
):Promise
<ApiResponseType
<any
>>
定义于: models/platform/github/client.ts:528
Github PATCH 请求方法
参数
path
string
请求路径
params
URL查询参数
null
| Record
<string
, string
>
data
any
请求数据
customHeaders?
Record
<string
, string
>
请求头,选项
返回
Promise
<ApiResponseType
<any
>>
请求结果
继承自
post()
post(
path
,data
,customHeaders?
):Promise
<ApiResponseType
<any
>>
定义于: models/platform/github/client.ts:491
Github POST 请求方法
参数
path
string
请求路径
data
any
请求数据
customHeaders?
Record
<string
, string
>
请求头,选项
返回
Promise
<ApiResponseType
<any
>>
请求结果
继承自
put()
put(
path
,data
,customHeaders?
):Promise
<ApiResponseType
<any
>>
定义于: models/platform/github/client.ts:565
Github PUT 请求方法
参数
path
string
请求路径
data
any
请求数据
customHeaders?
Record
<string
, string
>
请求头,选项
返回
Promise
<ApiResponseType
<any
>>
请求结果
继承自
refresh_token()
refresh_token(
options
):Promise
<ApiResponseType
<RefreshTokenResponseType
>>
定义于: models/platform/github/auth.ts:144
通过 refresh_token 获取 token
参数
options
获取 token 的参数
- options.refresh_token - Github 返回的 refresh_token
返回
Promise
<ApiResponseType
<RefreshTokenResponseType
>>
返回 token
示例
const token = await auth.refresh_token({ refresh_token: 'refresh_token' })
console.log(token) // 输出token对象
setProxy()
setProxy(
proxy
):void
定义于: models/platform/github/client.ts:343
设置请求代理
参数
proxy
代理参数
返回
void
示例
setProxy({
type: 'http',
address: 'http://127.0.0.1:7890'
})
继承自
setRequestConfig()
protected
setRequestConfig(config
):void
定义于: models/platform/github/client.ts:428
设置当前请求的配置
- 仅在父类与子类中方法中可访问
参数
config
配置对象,包含以下属性:
- url: 请求的URL
- token: 认证令牌
- tokenType: 认证令牌类型,默认为 'Bearer'
返回
void
继承自
setToken()
setToken(
token
):void
定义于: models/platform/github/client.ts:390
设置 token 传入的 token 必须以 ghu_ 或 ghp_ 或 ghs_ 开头,否则会抛出错误
参数
token
string
传入的 token
返回
void
示例
setToken('ghu_xxxx')