我正在使用空手道进行自动化,并且必须使用oauth 1.0身份验证,该身份验证包含4个字段,分别是令牌,令牌密钥,使用者密钥和使用者密钥。空手道我做不到。你能帮我解决这个问题吗?
我曾经尝试使用configure标头选项来实现某些东西,但是没有成功。我没有空手道的经验,我无法尝试其他任何事情。
这就是我放心使用它的方式。我想用空手道实现相同的逻辑。下面是放心的代码;
''' 响应响应=给定().auth()。oauth(consumerKey, ConsumerSecret,token,tokenSceret)。 queryParam(“ screen_name”,“ realDonaldTrump”)。 queryParam(“ count”,1)。 when()。get(“ / user_timeline.json”)。 then()。extract()。response(); '''
答案 0 :(得分:0)
请参考演示:https://github.com/intuit/karate/tree/master/karate-demo
它要求您执行Java Interop:https://github.com/intuit/karate#calling-java
因此,除非您准备编写one Java class并从Karate中使用它,否则您可以选择寻找其他框架。
如果需要,您还需要引用Twitter API:https://developer.twitter.com/en/docs/basics/authentication/guides/creating-a-signature
这不是空手道内置的,因为它会变得非常特殊。如果需要,请尽一切可能帮助Java的人。
* def Signer = Java.type('com.myco.Signer')
* def params =
"""
{
'userId': '399645532',
'os':'android',
'client_key': '3c2cd3f3',
'token': '141a649988c946ae9b5356049c316c5d-838424771',
'token_client_salt': 'd340a54c43d5642e21289f7ede858995'
}
"""
* Signer.sign('382700b563f4', params)
* path 'echo'
* form fields params
* method post
* status 200