QA_*_*cks 6 javascript oauth-2.0 artillery
我想通过 javascript 自动执行 OAuth 2.0 令牌。有什么方法可以做到这一点并获得令牌以在炮兵脚本中使用它。
对于 OAuth 令牌生成,我有以下详细信息:
它是通过客户端身份验证凭据完成的。
以下是我用来生成令牌的示例代码:
var ClientOAuth2 = require('client-oauth2')
var Auth = new ClientOAuth2({
clientId: 'ClientID',
accessTokenUri: 'https://Auth_URL/v2.0/token',
authorizationUri: 'https://Auth_URL/v2.0/authorize',
redirectUri: 'https://Auth_URL/',
scope: 'api://Scope/access_as_user'
})
Auth.owner.getToken('Username', 'password')
.then(async (user) => {
await console.log(user) //=> { accessToken: '...', tokenType: 'bearer', ... }
}).catch((e) => { console.log('error show',e); })
.finally( () => console.log('end'));
Run Code Online (Sandbox Code Playgroud)
您可以声明自定义 JS 文件,该文件将在每次请求之前触发:
您的 YAML 文件可以如下所示:
config:
target: "https://baseUrl.com"
phases:
- duration: 60
arrivalRate: 100
processor: "./customFile.js"
scenarios:
- flow:
- post:
url: "/pathInYourApi"
headers:
Content-Type: "application/json"
Accept: application/json
json: {}
beforeRequest: "beforeRequest"
Run Code Online (Sandbox Code Playgroud)
然后是您的 customFile.js 脚本:
config:
target: "https://baseUrl.com"
phases:
- duration: 60
arrivalRate: 100
processor: "./customFile.js"
scenarios:
- flow:
- post:
url: "/pathInYourApi"
headers:
Content-Type: "application/json"
Accept: application/json
json: {}
beforeRequest: "beforeRequest"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3528 次 |
| 最近记录: |