我正在使用座位卖家 API 从座位卖家 API 中检索一些数据。他们使用 oAuth 来防止未经授权的请求。他们给了我访问他们的网络服务的消费者 key 和消费者 key ,但他们没有为我提供 oAuth 库。我有点困惑如何制作我自己的 oAuth 库?
下面是从webservice获取数据的url
http://api.seatseller.travel/destinations?source=3
如果您粘贴此网址,您会看到“错误:OAUTH 验证失败。”。
谁能指导我如何使用 oauth token 和 key 发出 HTTP 请求?
最佳答案
这是有效的解决方案
这是我发现的。
对于 oauth,我提供了消费者 key 和消费者 key 。我试图在没有访问 token 的情况下发出身份验证请求,这可以使用以下代码实现。
OAuthConsumer consumer = new DefaultOAuthConsumer(
"vLrlKnO7XgdH3eu4dvcG5BU9QwCtrQ",
"AdsphqRmHTvhtZLyiNoCeliLJP2NXZ");
consumer.setTokenWithSecret(null, null); //i pass token as access token as a null as my server dont need it.
// create an HTTP request to a protected resource
URL url = new URL(
"http://www.mywebservice.com");
HttpURLConnection request = (HttpURLConnection) url.openConnection();
// sign the request
consumer.sign(request);
// send the request
request.connect();
InputStream in = new BufferedInputStream(request.getInputStream());
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
StringBuilder out = new StringBuilder();
String line = "";
while ((line = reader.readLine()) != null) {
out.append(line);
}
System.out.println(out.toString());
我使用下面的 api 进行 oAuth 和 Http 连接
- commons-codec-1.6.jar
- 列表项
- commons-logging-1.1.3.jar
- httpclient-4.3.5.jar
- httpcore-4.3.2.jar
- signpost-commonshttp4-1.2.1.2.jar
- signpost-core-1.2.1.2.jar
关于java - 使用 seateller api 的 OAuth 验证失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26058930/