我想在我的java应用程序中开发一个evernote同步函数。
所以我下载源代码,因为evernote告诉我,并且它正确地获取了jar包。
我也下载了scribe-java。我想用scribe java来获取oauth令牌。
当我看到scribe-java中有一个evernoteapi课时,我很高兴。
但我得到了一个例外:
” org.scribe.exceptions.OAuthException :响应正文不正确。无法从中提取令牌和秘密:
'<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=9,chrome=1" />
<meta name="viewport" content="width=device-width,initial-scale=1" />
<link rel="Shortcut Icon" href="/favicon.ico" type="image/x-icon" />
<link rel="stylesheet" href="/redesign/global/css/reset.css" />
<link rel="stylesheet" href="/redesign/global/css/fonts.css" media="all" />
<link rel="stylesheet" href="/redesign/global/css/header.css" />
<link rel="stylesheet" href="/redesign/global/css/layout.css" />
<title>Evernote Error</title>
</head>
<body>
<div class="header">
<div class="logo-bar">
<a class="evernote-logo" href="https://sandbox.evernote.com/Home.action?/">Evernote</a></div>
</div>
<div id="container-boundingbox" class="wrapper">
<div id="container" class="wrapper">
<div class="main">
<div class="page-header">
<h1>
Oops, we encountered an error.</h1>
</div>
<div>
<p>
Sorry, we've encountered an unexpected error.</p>
</div>
<div class="clear"></div>
</div>
</div>
<div class="shadow wrapper">
<img src="/redesign/global/img/desktop-shadow-full.png" />
</div>
<div class="footer wrapper">
<a class="footer-entry" href="https://sandbox.evernote.com/Home.action?/tos/">Terms of Service</a><a class="footer-entry" href="https://sandbox.evernote.com/Home.action?/privacy/">Privacy Policy</a><span class="footer-entry last">Copyright 2014 Evernote Corporation. All rights reserved.</span>
</div>
</div>
</body>
</html>'
“
此异常是在 Token requestToken = service.getRequestToken(); :
行引发的 OAuthService service = new ServiceBuilder()
.provider(EvernoteApi.Sandbox.class)
.apiKey("your key")
.apiSecret("your secret")
.build();
Token requestToken = service.getRequestToken();
String authUrl = service.getAuthorizationUrl(requestToken);
我用谷歌搜索它并且仍然不知道......
答案 0 :(得分:1)
我猜你错过了回调网址。
OAuthService service = new ServiceBuilder()
.provider(EvernoteApi.Sandbox.class)
.apiKey("YOUR CONSUMER_KEY")
.apiSecret("YOUR CONSUMER_SECRET")
.callback("YOUR CALLBACK URL")
.build();
您还可以查看this sample app的工作原理。