我正在使用ReadyAPI(SoapUI - pro),并且能够手动检索授权类型客户端凭据的OAuth2.0访问令牌。
x1c 0d1x的数据
如何在Groovy脚本中自动获取Access Token,以便在没有GUI交互的情况下从命令行运行它。我使用的Groovy代码是:
@Grab(group='org.codehaus.groovy.modules.http-builder', module='http-builder', version='0.7.1')
import groovyx.net.http.HTTPBuilder
import groovyx.net.http.Method
import groovyx.net.http.ContentType
def clientId = '*************-ac6efba39e6a'
def clientSecret = '**********_icH6Nr6.7'
def tokenUrl = 'https://login.microsoftonline.com/*******/oauth2/v2.0/token'
// First, we obtain an access token using the client credentials grant
def http = new HTTPBuilder(tokenUrl)
http.request(Method.POST, ContentType.URLENC) { req ->
body = [
grant_type: 'client_credentials',
client_id: clientId,
client_secret: clientSecret
]
response.success = { resp, reader ->
// Extract the access token from the response
def accessToken = resp.data.access_token
// Now we can use the access token to make API requests
makeApiRequest(accessToken)
}
}
// Finally, we can use the access token to make API requests
def makeApiRequest(accessToken) {
def http = new HTTPBuilder('https://***-npd.az****.ca')
http.request(Method.GET, ContentType.JSON) { req ->
headers['Authorization'] = "Bearer $accessToken"
response.success = { resp, reader ->
// Handle the API response
println resp.data
}
}
}
字符串
当我运行这段代码时,我得到这个错误:
java.lang.NoClassDefFoundError: org/apache/ivy/util/MessageLogger
型
1条答案
按热度按时间velaa5lx1#
看起来你在Groovy设置中缺少.jar。
看看这个帖子里的答案,也许会有帮助。
Groovy @Grab NoClassDefFoundError: org/apache/ivy/plugins/resolver/DependencyResolver