gpt4 book ai didi

android - Volley OAuth1.0认证

转载 作者:太空宇宙 更新时间:2023-11-03 11:00:29 24 4
gpt4 key购买 nike

我尝试使用OAuth1.0认证。我在 postman 身上试了一下。 Postman guide表示您可以设置以下值:

消费者 key :RKCGzna7bv9YD57c

消费者 secret :D+EdQ-gs$-%@2Nu7

在 postman 上,我设置了这些值并选中“将参数添加到 header ”。响应状态码为200。

当我点击向 header 添加参数时, postman 生成以下值:

OAuth oauth_consumer_key="RKCGzna7bv9YD57c",oauth_signature_method="HMAC-SHA1",oauth_timestamp="1499874836",oauth_nonce="T5zV4W",oauth_version="1.0",oauth_signature="YDXruS98dvqQs7Ra3a3ZWczkEpM%3D"

public Map<String, String> getHeaders() throws AuthFailureError {
final Map<String, String> headers = new HashMap<>();
headers.put("Authorization", headerValue); // headerValue is taken from postman
return headers;
}

它有效。但我希望根据 postman guide 分配消费者 key 和消费者 secret 就足够了.

以下用法无效。它表示 {"status":"fail","message":"Timestamp is missing or is not a number"}。我应该使用 headers.put("Authorization", authString); 吗?

还必须给出时间戳、签名和签名方法吗?

headers.put("oauth_consumer_key","RKCGzna7bv9YD57c");
headers.put("oauth_signature_method","HMAC-SHA1");
headers.put("oauth_timestamp","1499874836");
headers.put("oauth_nonce", "0Jx39O");
headers.put("oauth_signature_method","HMAC-SHA1");
headers.put("oauth_signature", "GGKc%2FuFoAWIflEsfE1%2B6mZau3vM%3D");
headers.put("oauth_timestamp","1499872116");
headers.put("oauth_version","1.0");

最佳答案

new Thread() {
@Override
public void run() {
String RESOURCE_URL = "url";
String SCOPE = "*"; //all permissions
Response response;
OAuthRequest request;
String responsebody = "";
OAuthService service = new ServiceBuilder().provider(OneLeggedApi10.class)
.apiKey("key")
.apiSecret("secrect")
.signatureType(SignatureType.QueryString)
.debug()
/*.scope(SCOPE).*/
.build();

request = new OAuthRequest(Verb.GET, RESOURCE_URL);
service.signRequest(new Token("", ""), request);

// Now let's go and ask for a protected resource!
Log.d("scribe", "Now we're going to access a protected resource...");

try {
response = request.send();
if (response.isSuccessful()) {
responsebody = response.getBody();
Log.e("response", responsebody);
}

} catch (Exception e) {
e.printStackTrace();
}
}
}.start();

关于android - Volley OAuth1.0认证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45062588/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com