网站调用新浪微博内容(新浪微博注册应用的一些注意事项及注意的事项)
优采云 发布时间: 2022-03-05 12:06网站调用新浪微博内容(新浪微博注册应用的一些注意事项及注意的事项)
首先需要下载新浪微博的SDK,地址如下:
下载后解压,然后打开myeclipse,新建一个项目,然后将刚刚解压的文件导入到项目中。如图所示:
接下来,转到此 URL 以注册应用程序。共有三种应用程序,选择站点应用程序,然后创建应用程序。填写所有必填项。确定确认。有两点需要注意:
1.注册应用后会有App Key和App Secret,接下来会用到。
2.进入“我的应用”,选择:应用信息,
点击“编辑”,注意有两个地址:其中“申请实际地址”要认真填写。对于我来说,注意地址后面不要有“/”。现在,记住这个地址,你以后会用到它。
现在,进入myeclipse,在src下,有config.properties文件,编辑一下
client_ID 是 App 密钥。
client_SERCRET 是 App Secret
redirect_URI 是前面突出显示的地址:
保存。
接下来,我们发送一条推文:
在examples下,weibo4j.examples.oauth2包下:OAuth4Code类,直接运行:会出现应用授权页面。输入用户名和密码后,会跳转到之前填写的redirect_URI页面。如果微博信息保存在浏览器中,会直接跳转到redirect_URI页面,不经过这个页面。
跳转到redirect_URI页面后,看到URL地址栏,格式是redirect_URI?代码=xxxxxx。接下来复制代码的值,然后到myeclipse的控制台输出看看:
code=https://api.weibo.com/oauth2/authorize?client_id=1458508643&redirect_uri=http://127.0.0.1/callback.jsp&response_type=code
Hit enter when it's done.[Enter]:
接下来,将代码粘贴到 [Enter]: 之后。进入。你会看到很多输出信息。
直接跳到最后,看access_token,这是我们需要的,记录一下。
接下来发微博:
在weibo4j.examples.timeline包下,UpdateStatus类下/
我需要传入两个参数,所以我直接写了。代码显示如下:
packageweibo4j.examples.timeline;
importweibo4j.Timeline;
importweibo4j.Weibo;
importweibo4j.examples.oauth2.Log;
importweibo4j.model.Status;
importweibo4j.model.WeiboException;
publicclassUpdateStatus {
publicstaticvoidmain(String[] args) {
String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI";
String statuses = "此条微博来自星光发布系统发布";
Weibo weibo = newWeibo();
weibo.setToken(access_token);
Timeline tm = newTimeline();
try{
Status status = tm.UpdateStatus(statuses);
Log.logInfo(status.toString());
} catch(WeiboException e) {
e.printStackTrace();
} }
}
package weibo4j.examples.timeline;
import weibo4j.Timeline;
import weibo4j.Weibo;
import weibo4j.examples.oauth2.Log;
import weibo4j.model.Status;
import weibo4j.model.WeiboException;
public class UpdateStatus {
public static void main(String[] args) {
String access_token = "2.00lBvA1CxikhaBfbc0d2a0c10FWttI";
String statuses = "此条微博来自星光发布系统发布";
Weibo weibo = new Weibo();
weibo.setToken(access_token);
Timeline tm = new Timeline();
try {
Status status = tm.UpdateStatus(statuses);
Log.logInfo(status.toString());
} catch (WeiboException e) {
e.printStackTrace();
} }
}
statuses 是您要发布的内容。
这时候就可以发微博了。
有问题的留言。!
随附的:
有时,比如在使用另一个微博账号(即与注册应用不同的账号)时,会出现一些错误。错误信息:
{"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"}
eibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why.
error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json
at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414)
at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372)
at weibo4j.http.HttpClient.post(HttpClient.java:301)
at weibo4j.http.HttpClient.post(HttpClient.java:286)
at weibo4j.Timeline.UpdateStatus(Timeline.java:708)
at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18)
{"error":"applications over the unaudited use restrictions!","error_code":21321,"request":"/2/statuses/update.json"}
weibo4j.model.WeiboException: 403:The request is understood, but it has been refused. An accompanying error message will explain why.
error:applications over the unaudited use restrictions! error_code:21321/2/statuses/update.json
at weibo4j.http.HttpClient.httpRequest(HttpClient.java:414)
at weibo4j.http.HttpClient.httpRequest(HttpClient.java:372)
at weibo4j.http.HttpClient.post(HttpClient.java:301)
at weibo4j.http.HttpClient.post(HttpClient.java:286)
at weibo4j.Timeline.UpdateStatus(Timeline.java:708)
at weibo4j.examples.timeline.UpdateStatus.main(UpdateStatus.java:18)
解决方法:还是在我的应用里,点击“应用信息”,“测试账号”,看到有添加了一个测试账号。这时候可以添加你想发微博的账号的用户昵称,就OK了。
时间:2015-11-23