使用新浪微博开放平台api同步微博内容至自己网站

使用新浪微博开放平台api同步微博内容至自己网站

使用新浪微博开放平台api同步微博内容至自己网站(调用新浪微博开放平台API开发自己的微博应用(App))

网站优化优采云 发表了文章 • 0 个评论 • 71 次浏览 • 2022-01-12 22:14 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(调用新浪微博开放平台API开发自己的微博应用(App))
  新浪微博开放平台虽然提供多种语言的开发SDK下载,但也有一些基本接口调用的demo和接口说明文档。但是经过几天的耐心尝试,感觉新浪微博开放平台上的入门指南和下载的Java开发包weibo4j包中的demo用法注释有些不一致。再加上自身领悟能力有限,遇到了不少难题。幸运的是,我没有放弃尝试理解它。废话不多说,这是我的学习过程。
  如果你想通过调用新浪微博开放平台API来开发自己的微博应用,第一步就是要有一个新浪微博账号和一个CSDN账号,因为我们需要同时用这两个账号创建一个微博应用,从而获得App key和CSDN账号。密钥 。App key 和 Secret key 有什么用?
  其实我只是看了新浪微博开放平台上的一系列说明,对App key和Secret key的使用并不是很了解。因为更重要的一点是要了解OAuth认证授权的整个过程,以及几个Token和4个URL在整个OAuth认证授权过程中的作用。
  当我第一次遇到完全没有概念的 OAuth 时,我认为它是不可能学习的。幸运的是,我找到了下面的文章,对理解OAuth很有帮助。链接如下:
  OAuth 中共有三个参与者,即用户、服务提供者和消费者。假设我想开发一个基于新浪微博开放平台的应用程序(App),供其他新浪微博用户使用。它们的对应关系如下:
  实际上,我们的App相当于User和Provider(新浪微博平台)的第三方应用。作为第三方App,要想访问用户存储在新浪微博平台的资源,必须经过一系列的认证和授权后才能工作。
  下面是根据我对整个OAuth认证授权过程的理解绘制的图(可以看略过,对以下一些概念有一定了解后再看这个流程图):
  结合上面的流程图,下面是我对这些术语的理解和对各个流程的描述:
  Consumer key和Consumer Secret:在新浪微博开放平台上分别称为App key和Secret key。Consumer 向 Provider 申请能够调用其开放的 API。申请通过后,Provider将其分配给满足其要求的Consumer,以唯一标识满足Provider要求的Consumer。
  对应上图中的流1和2。
  Request Token,Request Secret:当User访问Consumer,想要获取其特殊服务时,该服务由Consumer整合存储在Provider中的User自己的资源后返回。此时,Consumer 向 Provider 请求获取一个 Requst Token,用于唯一标识 Consumer 和 User 之间的具体关联。
  对应上图中的流程3、4、5。
  在流程6中,Consumer必须将User引导到Provider提供的OAuth认证授权页面。实际上,浏览器会重定向到附加了 Request Token 和 Request Secret 参数的 authenticationURL。URL 由 Provider 提供。
  接下来在流程7和流程8中,User授权Consumer(一般是输入账号和密码登录),然后Provider会重定向到流程1中Consumer提供的Callback_URL,并附加OAuth Token和OAuth URL 参数的验证程序。.
  流程9,Consumer通过之前已经从Provider获取的Request Token,再次请求Provider获取Access Token。
  Access Token和Access Secret:如果Provider在流程10中返回了一个未经User授权的Access Token,用于唯一标识特定的Consumer可以访问某个User存储在Provider中的资源和信息。然后Consumer就可以开始使用获取到的Access Token和Access Secret来访问对应User存储在Provider中的资源。
  在流程11中对用户信息进行整合和操作后,可以将具体的服务结果返回给用户。
  通过以上对OAuth流程的了解,我们知道User并没有将登录Provider所需的账号、密码等泄露给第三方Consumer。同时,用户可以使用消费者的特殊服务。多么巧妙又安全的操作过程!
  另外,上图中,Consumer向Provider发出了三个不同的请求,实际上就是Provider提供了三个不同功能的URL供Consumer访问。新浪微博开放平台三个网址截图如下:
  使用OAuth在新浪微博开放平台验证和发布微博
  使用新浪微博开放平台的API,首先要获取新浪分配的App key和App Secret。以下是我创建应用后新浪分配的App key和App Secret(这个要保密)。
  然后下载微博SDK,我用的是Java的weibo4j。
  将SDK包中Weibo.java类的App Key和App Secret修改为刚刚获取的App Key和App Secret,如下所示:
  完成这些后,就可以根据提供的Demo开始编写代码了。如下:
  WebOAuth.java用于初始化Weibo.java类所需的App Key和App Secret,并提供getRequestToken()和gettAccessToken()方法获取Request Token和Access Token。所需的参数显示在代码中。此外,还提供了一种发布文本微博的方法update()。
   package weibo4j.examples; import weibo4j.Status; import weibo4j.Weibo; import weibo4j.WeiboException; import weibo4j.http.AccessToken; import weibo4j.http.RequestToken; import java.io.UnsupportedEncodingException; // Web 方式认证 public class WebOAuth { private Weibo weibo; public WebOAuth(){ // 准备好Consumer Key、Consumer Secret // 对应于新浪微博应用就是申请到的 App key 和 Secret key System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY); System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET); weibo = new Weibo(); } // 根据传入的 callback_url 获取 request token public RequestToken getRequestToken(String backUrl) { try { // 指定 callback_url 并获得 request token RequestToken requestToken = weibo.getOAuthRequestToken(backUrl); System.out.println("Request token: " + requestToken.getToken()); System.out.println("Request token secret: " + requestToken.getTokenSecret()); return requestToken; } catch (Exception e) { System.out.println("获取Request token发生异常!"); e.printStackTrace(); return null; } } // 根据传入的 request token 和 verifier 获取 access token public AccessToken gettAccessToken(RequestToken requestToken, String verifier) { try { AccessToken accessToken = weibo.getOAuthAccessToken(requestToken .getToken(), requestToken.getTokenSecret(), verifier); System.out.println("Access token: " + accessToken.getToken()); System.out.println("Access token secret: " + accessToken.getTokenSecret()); return accessToken; } catch (Exception e) { System.out.println("获取Access token发生异常!"); e.printStackTrace(); return null; } } // 根据传入的 Access Token 和内容发表微博 public void update(AccessToken access, String content) { try { weibo.setToken(access.getToken(), access.getTokenSecret()); content = new String(content.getBytes("GBK"), "UTF-8"); Status status = weibo.updateStatus(content); System.out.println("成功发表微博:" + status.getText() + "."); } catch (UnsupportedEncodingException e) { System.out.println("微博内容转编码发生异常!"); e.printStackTrace(); } catch (WeiboException e) { System.out.println(来源gaodai.ma#com搞#代!码网"发表微博发生异常!"); e.printStackTrace(); } } } request.jsp,用于提供 callback_url(这里我们自定义为下文中的callback.jsp),当获取得到RequestToken之后,保存该RequestToken到Session中,并将页面重定向到callback.jsp进行验证、授权。 请点击进行Web方式的OAuth认证!
  callback.jsp,在上一步重定向后,会在callback_url后面附加oauth_verifier参数。这时候我们根据Session中保存的RequestToken和获取到的oauth_verifier参数申请AccessToken。获取到AccessToken后,我们将页面重定向到writeWeibo.html,即写微博的页面。
   writeWeibo.html,很简单的HTML文件。 发布sina微博 请在这里写上140字符以内的文本:</br>测试新浪微博!</br></br> updateWeibo.jsp,用于发表文本微博,即调用WebOAuth.java 中的update方法。
  运行前我们要准备好Tomcat,把上面的源文件放到正确的目录下。另外SDK包中的commons-httpclient-3.1.jar包也要加到\WEB-INF\lib目录下,还有我编译打包的weibo4j.jar(里面是新浪微博开放平台中具体的Java实现)。
  运行Tomcat,在浏览器中访问request.jsp页面,如下图:
  点击链接,如下图(注意地址栏的变化):
  地址栏中的网址如下:
  ://localhost:8080/sinaweibo/callback.jsp
  填写具体有效的新浪微博账号、密码和授权。以下是我用于测试和授权的微博账号填写的结果:
  地址栏中的网址如下:
  :8080/sinaweibo/writeWeibo.html
  点击“发布”,如下图:
  登录微博查看,如下图:
  查看此帐户授权的应用列表:
  至此,利用新浪微博开放平台发布关于OAuth方式的微博大概就是这个过程了。
  概括:
  1、其实还有很多细节我没有讲到。我也尝试了很多次,找到问题,理解问题,然后解决问题;
  2、如果我们登录新浪微博的账号信息的cookie已经保存在浏览器中,那么授权时不需要输入账号信息,当然也可以不使用当前账号进行修改授权;
  3、还有一些信息是在控制台输入的,比如Token、URL、服务器返回信息,截图中没有给出。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(调用新浪微博开放平台API开发自己的微博应用(App))
  新浪微博开放平台虽然提供多种语言的开发SDK下载,但也有一些基本接口调用的demo和接口说明文档。但是经过几天的耐心尝试,感觉新浪微博开放平台上的入门指南和下载的Java开发包weibo4j包中的demo用法注释有些不一致。再加上自身领悟能力有限,遇到了不少难题。幸运的是,我没有放弃尝试理解它。废话不多说,这是我的学习过程。
  如果你想通过调用新浪微博开放平台API来开发自己的微博应用,第一步就是要有一个新浪微博账号和一个CSDN账号,因为我们需要同时用这两个账号创建一个微博应用,从而获得App key和CSDN账号。密钥 。App key 和 Secret key 有什么用?
  其实我只是看了新浪微博开放平台上的一系列说明,对App key和Secret key的使用并不是很了解。因为更重要的一点是要了解OAuth认证授权的整个过程,以及几个Token和4个URL在整个OAuth认证授权过程中的作用。
  当我第一次遇到完全没有概念的 OAuth 时,我认为它是不可能学习的。幸运的是,我找到了下面的文章,对理解OAuth很有帮助。链接如下:
  OAuth 中共有三个参与者,即用户、服务提供者和消费者。假设我想开发一个基于新浪微博开放平台的应用程序(App),供其他新浪微博用户使用。它们的对应关系如下:
  实际上,我们的App相当于User和Provider(新浪微博平台)的第三方应用。作为第三方App,要想访问用户存储在新浪微博平台的资源,必须经过一系列的认证和授权后才能工作。
  下面是根据我对整个OAuth认证授权过程的理解绘制的图(可以看略过,对以下一些概念有一定了解后再看这个流程图):
  结合上面的流程图,下面是我对这些术语的理解和对各个流程的描述:
  Consumer key和Consumer Secret:在新浪微博开放平台上分别称为App key和Secret key。Consumer 向 Provider 申请能够调用其开放的 API。申请通过后,Provider将其分配给满足其要求的Consumer,以唯一标识满足Provider要求的Consumer。
  对应上图中的流1和2。
  Request Token,Request Secret:当User访问Consumer,想要获取其特殊服务时,该服务由Consumer整合存储在Provider中的User自己的资源后返回。此时,Consumer 向 Provider 请求获取一个 Requst Token,用于唯一标识 Consumer 和 User 之间的具体关联。
  对应上图中的流程3、4、5。
  在流程6中,Consumer必须将User引导到Provider提供的OAuth认证授权页面。实际上,浏览器会重定向到附加了 Request Token 和 Request Secret 参数的 authenticationURL。URL 由 Provider 提供。
  接下来在流程7和流程8中,User授权Consumer(一般是输入账号和密码登录),然后Provider会重定向到流程1中Consumer提供的Callback_URL,并附加OAuth Token和OAuth URL 参数的验证程序。.
  流程9,Consumer通过之前已经从Provider获取的Request Token,再次请求Provider获取Access Token。
  Access Token和Access Secret:如果Provider在流程10中返回了一个未经User授权的Access Token,用于唯一标识特定的Consumer可以访问某个User存储在Provider中的资源和信息。然后Consumer就可以开始使用获取到的Access Token和Access Secret来访问对应User存储在Provider中的资源。
  在流程11中对用户信息进行整合和操作后,可以将具体的服务结果返回给用户。
  通过以上对OAuth流程的了解,我们知道User并没有将登录Provider所需的账号、密码等泄露给第三方Consumer。同时,用户可以使用消费者的特殊服务。多么巧妙又安全的操作过程!
  另外,上图中,Consumer向Provider发出了三个不同的请求,实际上就是Provider提供了三个不同功能的URL供Consumer访问。新浪微博开放平台三个网址截图如下:
  使用OAuth在新浪微博开放平台验证和发布微博
  使用新浪微博开放平台的API,首先要获取新浪分配的App key和App Secret。以下是我创建应用后新浪分配的App key和App Secret(这个要保密)。
  然后下载微博SDK,我用的是Java的weibo4j。
  将SDK包中Weibo.java类的App Key和App Secret修改为刚刚获取的App Key和App Secret,如下所示:
  完成这些后,就可以根据提供的Demo开始编写代码了。如下:
  WebOAuth.java用于初始化Weibo.java类所需的App Key和App Secret,并提供getRequestToken()和gettAccessToken()方法获取Request Token和Access Token。所需的参数显示在代码中。此外,还提供了一种发布文本微博的方法update()。
   package weibo4j.examples; import weibo4j.Status; import weibo4j.Weibo; import weibo4j.WeiboException; import weibo4j.http.AccessToken; import weibo4j.http.RequestToken; import java.io.UnsupportedEncodingException; // Web 方式认证 public class WebOAuth { private Weibo weibo; public WebOAuth(){ // 准备好Consumer Key、Consumer Secret // 对应于新浪微博应用就是申请到的 App key 和 Secret key System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY); System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET); weibo = new Weibo(); } // 根据传入的 callback_url 获取 request token public RequestToken getRequestToken(String backUrl) { try { // 指定 callback_url 并获得 request token RequestToken requestToken = weibo.getOAuthRequestToken(backUrl); System.out.println("Request token: " + requestToken.getToken()); System.out.println("Request token secret: " + requestToken.getTokenSecret()); return requestToken; } catch (Exception e) { System.out.println("获取Request token发生异常!"); e.printStackTrace(); return null; } } // 根据传入的 request token 和 verifier 获取 access token public AccessToken gettAccessToken(RequestToken requestToken, String verifier) { try { AccessToken accessToken = weibo.getOAuthAccessToken(requestToken .getToken(), requestToken.getTokenSecret(), verifier); System.out.println("Access token: " + accessToken.getToken()); System.out.println("Access token secret: " + accessToken.getTokenSecret()); return accessToken; } catch (Exception e) { System.out.println("获取Access token发生异常!"); e.printStackTrace(); return null; } } // 根据传入的 Access Token 和内容发表微博 public void update(AccessToken access, String content) { try { weibo.setToken(access.getToken(), access.getTokenSecret()); content = new String(content.getBytes("GBK"), "UTF-8"); Status status = weibo.updateStatus(content); System.out.println("成功发表微博:" + status.getText() + "."); } catch (UnsupportedEncodingException e) { System.out.println("微博内容转编码发生异常!"); e.printStackTrace(); } catch (WeiboException e) { System.out.println(来源gaodai.ma#com搞#代!码网"发表微博发生异常!"); e.printStackTrace(); } } } request.jsp,用于提供 callback_url(这里我们自定义为下文中的callback.jsp),当获取得到RequestToken之后,保存该RequestToken到Session中,并将页面重定向到callback.jsp进行验证、授权。 请点击进行Web方式的OAuth认证!
  callback.jsp,在上一步重定向后,会在callback_url后面附加oauth_verifier参数。这时候我们根据Session中保存的RequestToken和获取到的oauth_verifier参数申请AccessToken。获取到AccessToken后,我们将页面重定向到writeWeibo.html,即写微博的页面。
   writeWeibo.html,很简单的HTML文件。 发布sina微博 请在这里写上140字符以内的文本:</br>测试新浪微博!</br></br> updateWeibo.jsp,用于发表文本微博,即调用WebOAuth.java 中的update方法。
  运行前我们要准备好Tomcat,把上面的源文件放到正确的目录下。另外SDK包中的commons-httpclient-3.1.jar包也要加到\WEB-INF\lib目录下,还有我编译打包的weibo4j.jar(里面是新浪微博开放平台中具体的Java实现)。
  运行Tomcat,在浏览器中访问request.jsp页面,如下图:
  点击链接,如下图(注意地址栏的变化):
  地址栏中的网址如下:
  ://localhost:8080/sinaweibo/callback.jsp
  填写具体有效的新浪微博账号、密码和授权。以下是我用于测试和授权的微博账号填写的结果:
  地址栏中的网址如下:
  :8080/sinaweibo/writeWeibo.html
  点击“发布”,如下图:
  登录微博查看,如下图:
  查看此帐户授权的应用列表:
  至此,利用新浪微博开放平台发布关于OAuth方式的微博大概就是这个过程了。
  概括:
  1、其实还有很多细节我没有讲到。我也尝试了很多次,找到问题,理解问题,然后解决问题;
  2、如果我们登录新浪微博的账号信息的cookie已经保存在浏览器中,那么授权时不需要输入账号信息,当然也可以不使用当前账号进行修改授权;
  3、还有一些信息是在控制台输入的,比如Token、URL、服务器返回信息,截图中没有给出。

使用新浪微博开放平台api同步微博内容至自己网站(新浪微博短链接API是开放的,国外几家已经悲剧了)

网站优化优采云 发表了文章 • 0 个评论 • 36 次浏览 • 2022-01-12 22:12 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(新浪微博短链接API是开放的,国外几家已经悲剧了)
  在短地址(也叫短链接、缩短地址等)方面,推特发展后,还在不断发展,很多互联网网站使用短地址,国内外很多,但稳定且稳定。靠谱,国内的更靠谱。我不怕没有墙。几家外国公司已经遭遇了悲剧。因此,如果项目中使用短地址,我还是推荐使用新浪或者其他国内短链接服务。
  新浪微博短链接API开放,腾讯微博短地址API未开放。我想通过不同的途径获取腾讯微博的API,但以失败告终。新浪微博短地址API不需要用户登录,直接调用即可,速度非常快。以下代码来自网站,使用CURL POST方法作为参考。
  新浪微博短链接API文档在旧版开发文档中,新版中没有添加:
  function shortenSinaUrl($long_url){
$apiKey='1234567890';//这里是你申请的应用的API KEY,随便写个应用名就会自动分配给你
$apiUrl='http://api.t.sina.com.cn/short_url/shorten.json?source='.$apiKey.'&url_long='.$long_url;
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $apiUrl);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
curl_close($curlObj);
$json = json_decode($response);
return $json[0]->url_short;
}
function expandSinaUrl($short_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/expand.json?source='.$apiKey.'&url_short='.$short_url;
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $apiUrl);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
curl_close($curlObj);
$json = json_decode($response);
return $json[0]->url_long;
}
  参考新浪微博的开发文档,推荐使用get方法获取。那个代码更简单
  function shorturl($long_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/shorten.json?source='.$apiKey.'&url_long='.$long_url;
$response = file_get_contents($apiUrl);
$json = json_decode($response);
return $json[0]->url_short;
}
function expandurl($short_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/expand.json?source='.$apiKey.'&url_short='.$short_url;
$response = file_get_contents($apiUrl);
$json = json_decode($response);
return $json[0]->url_long;
}
  好的,是不是更简单了?
  调试上述代码时,需要填写自己的API key,否则无法获取。
  特别说明:短地址服务现在只为已经认证过的APP KEY提供服务,刚刚申请的APP KEY会提示没有权限。您可以使用两个键 209678993 和 3818214747 进行测试。这两个密钥的来源未知,不推荐用于生产。(感谢@congxz6688 的提醒)
  jucelin写了一个调试文档,可以测试一下:
  长到短:://
  短到长::///S4bLBm
  参数只有2个,类型:1表示长转短,2表示短转长,下面的网址是目标域名,因为懒,没有错误判断,新浪微博短地址不支持短地址和那么短地址是的,逻辑上应该是这样控制的。(不信可以试试)。
  新浪微博短地址接口更详细的说明请参考“新浪微博短地址接口”。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(新浪微博短链接API是开放的,国外几家已经悲剧了)
  在短地址(也叫短链接、缩短地址等)方面,推特发展后,还在不断发展,很多互联网网站使用短地址,国内外很多,但稳定且稳定。靠谱,国内的更靠谱。我不怕没有墙。几家外国公司已经遭遇了悲剧。因此,如果项目中使用短地址,我还是推荐使用新浪或者其他国内短链接服务。
  新浪微博短链接API开放,腾讯微博短地址API未开放。我想通过不同的途径获取腾讯微博的API,但以失败告终。新浪微博短地址API不需要用户登录,直接调用即可,速度非常快。以下代码来自网站,使用CURL POST方法作为参考。
  新浪微博短链接API文档在旧版开发文档中,新版中没有添加:
  function shortenSinaUrl($long_url){
$apiKey='1234567890';//这里是你申请的应用的API KEY,随便写个应用名就会自动分配给你
$apiUrl='http://api.t.sina.com.cn/short_url/shorten.json?source='.$apiKey.'&url_long='.$long_url;
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $apiUrl);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
curl_close($curlObj);
$json = json_decode($response);
return $json[0]->url_short;
}
function expandSinaUrl($short_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/expand.json?source='.$apiKey.'&url_short='.$short_url;
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $apiUrl);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
curl_close($curlObj);
$json = json_decode($response);
return $json[0]->url_long;
}
  参考新浪微博的开发文档,推荐使用get方法获取。那个代码更简单
  function shorturl($long_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/shorten.json?source='.$apiKey.'&url_long='.$long_url;
$response = file_get_contents($apiUrl);
$json = json_decode($response);
return $json[0]->url_short;
}
function expandurl($short_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/expand.json?source='.$apiKey.'&url_short='.$short_url;
$response = file_get_contents($apiUrl);
$json = json_decode($response);
return $json[0]->url_long;
}
  好的,是不是更简单了?
  调试上述代码时,需要填写自己的API key,否则无法获取。
  特别说明:短地址服务现在只为已经认证过的APP KEY提供服务,刚刚申请的APP KEY会提示没有权限。您可以使用两个键 209678993 和 3818214747 进行测试。这两个密钥的来源未知,不推荐用于生产。(感谢@congxz6688 的提醒)
  jucelin写了一个调试文档,可以测试一下:
  长到短:://
  短到长::///S4bLBm
  参数只有2个,类型:1表示长转短,2表示短转长,下面的网址是目标域名,因为懒,没有错误判断,新浪微博短地址不支持短地址和那么短地址是的,逻辑上应该是这样控制的。(不信可以试试)。
  新浪微博短地址接口更详细的说明请参考“新浪微博短地址接口”。

使用新浪微博开放平台api同步微博内容至自己网站(联合第三方平台登录接入,初次接触开放平台和AppSecret5 )

网站优化优采云 发表了文章 • 0 个评论 • 85 次浏览 • 2022-01-11 07:00 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(联合第三方平台登录接入,初次接触开放平台和AppSecret5
)
  最近做了一个关于联合第三方平台的登录访问,第一次接触到开放平台,在这里做个笔记。
  开发前的准备工作如下:
  1、注册新浪微博
  2、访问新浪微博开发平台。如果是企业,申请企业准入并提交相关材料进行审核;如果是个人开发者,请申请个人开发者申请。我们以开发者为例
  3、使用新浪微博开放API,需要向新浪申请一个appkey和一个App Secret。这些是入口。您必须先获得这两个,然后才能进行下一个访问工作。
  4、输入完善个人信息后,必须完成身份验证审核。审核完成后,新浪开放平台会给出appkey和App Secret。
  5、接下来就是如何使用appkey和App Secret了。您需要在开放平台下载文档或演示代码。其实提供的文档基本上都是技术文档,很多东西都没有解释清楚。还是会有很多麻烦
  6、新浪开放平台提供了很多不同开发语言的SDK,这里我选择java SDK,下载一个zip文件(包括新接口和OAuth2.0),解压后即可可以直接导入go到eclipse,结构如下,包括weibo4j源码和示例代码
  
  这里是一个config配置文件,打开如下:
  
  我们之前申请的appkey和App Secret就派上用场了。这里的client_ID为appkey,client_SERCRET为App Secret,填写对应内容,redirect_URI为回调地址。
  点击“第三方”-》跳转微博登录-》登录ok,授权-》回调自己的应用,这里是回调地址的意思。
  7、开始运行测试程序,测试程序在example下,包weibo4j.examples.oauth2下的类OAuth4Code,这里我们需要做一些修改,修改程序在
  oauth.authorize("code",args[0],args[1]),把这一段改成oauth.authorize("code","","all"),至于为什么改这个,请看界面此处的文档 oauth.authorize 使用说明
  假设我们这里没有回调地址,配置文件中的redirect_URI为空。运行后会自动打开浏览器运行测试,显示如下:
  
  此时的URL地址为:
  这说明我的appkey和App Secret是有效的,因为我们还没有创建正式的应用,新浪无法识别我的来源
  8、在开放平台上创建应用,如下图
  
  这里有三种类型的应用程序,网站 访问、站内应用程序和移动应用程序。如果是企业行为,有公有域名可以访问,应用通过域名访问。这里可以用任何方法,但是如果我们只是一个简单的开发者,没有公网域名,比如内网模式,ip以内网地址192.168.开头1.*,本地127.0.0.1等,这里只能选择创建站内应用,填写如下
  
  这里红框标注的地方就是回调地址。如果我没有公网ip和域名的话,我在局域网玩的时候随便填,但是不能用localhost代替127.0.0.1,这里是按照配置要求做的,这个配置的要求很严格,
  尤其是下面的应用图标比较麻烦。完成后,您可以提交它们以供审核。
  9、提交审核后,新浪开放平台会在1天左右第一时间向您的邮箱发送邮件通知您审核结果,但无论审核结果是否失败,关键是提交审核。没有审核成功,这里可以照常使用
  
  10、完成测试项目中的配置文件redirect_URI,必须与创建应用时填写的【应用实际地址】一致,这是回调地址!完成配置后,再次运行OAuth4Code.java,如图
  
  在这里你会跳转到新浪微博的登录页面。登录新浪微博账号后,需要点击授权,表示平台可以访问您的微博账号相关内容分享您的信息等。授权结束后,
  将返回一个代码。这段代码非常重要。它是我们整个访问第三方平台的门钥匙。通过这段代码,我们可以获取到用户的access_token、UID等内容,相当于整个访问过程。
  11、调用新浪微博开放API
  这里我们需要研究这些API来满足访问的需要。首先要熟悉的是OAuth2.0授权接口,网上可以查到,如下:
  
  12、通过servlet程序调用开放API获取新浪微博的UID和微博名的示例
  
  response.setContentType("text/html;charset=UTF-8");
String accessToken = null ;
String uid = null ;
String screenName = null ;
String username = null ;
AccessToken accessTokenObj = null ;
Oauth oauth2 = new Oauth();
try {
out = response.getWriter();
accessTokenObj = oauth2.getAccessTokenByCode(code) ;
logger.info(accessTokenObj);
accessToken = accessTokenObj.getAccessToken() ;
oauth2.setToken(accessToken) ;
Account account = new Account() ;
account.client.setToken(accessToken) ;
JSONObject uidJson = account.getUid() ;
uid = uidJson.getString("uid") ;

Users users = new Users() ;
users.client.setToken(accessToken) ;
User weiboUser = users.showUserById(uid) ;
username = weiboUser.getName() ;
screenName = weiboUser.getScreenName() ;


} catch (WeiboException | IOException | JSONException e) {
e.printStackTrace();
}
out.println("微博访问Token_Info:" + accessTokenObj + "\t");
out.println("微博访问Token:" + accessToken + "\t");
out.println("微博用户-Uid:" + uid + "\t");
out.println("微博用户-名称:" + screenName + "\t");
out.flush();
out.close();*/
   查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(联合第三方平台登录接入,初次接触开放平台和AppSecret5
)
  最近做了一个关于联合第三方平台的登录访问,第一次接触到开放平台,在这里做个笔记。
  开发前的准备工作如下:
  1、注册新浪微博
  2、访问新浪微博开发平台。如果是企业,申请企业准入并提交相关材料进行审核;如果是个人开发者,请申请个人开发者申请。我们以开发者为例
  3、使用新浪微博开放API,需要向新浪申请一个appkey和一个App Secret。这些是入口。您必须先获得这两个,然后才能进行下一个访问工作。
  4、输入完善个人信息后,必须完成身份验证审核。审核完成后,新浪开放平台会给出appkey和App Secret。
  5、接下来就是如何使用appkey和App Secret了。您需要在开放平台下载文档或演示代码。其实提供的文档基本上都是技术文档,很多东西都没有解释清楚。还是会有很多麻烦
  6、新浪开放平台提供了很多不同开发语言的SDK,这里我选择java SDK,下载一个zip文件(包括新接口和OAuth2.0),解压后即可可以直接导入go到eclipse,结构如下,包括weibo4j源码和示例代码
  
  这里是一个config配置文件,打开如下:
  
  我们之前申请的appkey和App Secret就派上用场了。这里的client_ID为appkey,client_SERCRET为App Secret,填写对应内容,redirect_URI为回调地址。
  点击“第三方”-》跳转微博登录-》登录ok,授权-》回调自己的应用,这里是回调地址的意思。
  7、开始运行测试程序,测试程序在example下,包weibo4j.examples.oauth2下的类OAuth4Code,这里我们需要做一些修改,修改程序在
  oauth.authorize("code",args[0],args[1]),把这一段改成oauth.authorize("code","","all"),至于为什么改这个,请看界面此处的文档 oauth.authorize 使用说明
  假设我们这里没有回调地址,配置文件中的redirect_URI为空。运行后会自动打开浏览器运行测试,显示如下:
  
  此时的URL地址为:
  这说明我的appkey和App Secret是有效的,因为我们还没有创建正式的应用,新浪无法识别我的来源
  8、在开放平台上创建应用,如下图
  
  这里有三种类型的应用程序,网站 访问、站内应用程序和移动应用程序。如果是企业行为,有公有域名可以访问,应用通过域名访问。这里可以用任何方法,但是如果我们只是一个简单的开发者,没有公网域名,比如内网模式,ip以内网地址192.168.开头1.*,本地127.0.0.1等,这里只能选择创建站内应用,填写如下
  
  这里红框标注的地方就是回调地址。如果我没有公网ip和域名的话,我在局域网玩的时候随便填,但是不能用localhost代替127.0.0.1,这里是按照配置要求做的,这个配置的要求很严格,
  尤其是下面的应用图标比较麻烦。完成后,您可以提交它们以供审核。
  9、提交审核后,新浪开放平台会在1天左右第一时间向您的邮箱发送邮件通知您审核结果,但无论审核结果是否失败,关键是提交审核。没有审核成功,这里可以照常使用
  
  10、完成测试项目中的配置文件redirect_URI,必须与创建应用时填写的【应用实际地址】一致,这是回调地址!完成配置后,再次运行OAuth4Code.java,如图
  
  在这里你会跳转到新浪微博的登录页面。登录新浪微博账号后,需要点击授权,表示平台可以访问您的微博账号相关内容分享您的信息等。授权结束后,
  将返回一个代码。这段代码非常重要。它是我们整个访问第三方平台的门钥匙。通过这段代码,我们可以获取到用户的access_token、UID等内容,相当于整个访问过程。
  11、调用新浪微博开放API
  这里我们需要研究这些API来满足访问的需要。首先要熟悉的是OAuth2.0授权接口,网上可以查到,如下:
  
  12、通过servlet程序调用开放API获取新浪微博的UID和微博名的示例
  
  response.setContentType("text/html;charset=UTF-8");
String accessToken = null ;
String uid = null ;
String screenName = null ;
String username = null ;
AccessToken accessTokenObj = null ;
Oauth oauth2 = new Oauth();
try {
out = response.getWriter();
accessTokenObj = oauth2.getAccessTokenByCode(code) ;
logger.info(accessTokenObj);
accessToken = accessTokenObj.getAccessToken() ;
oauth2.setToken(accessToken) ;
Account account = new Account() ;
account.client.setToken(accessToken) ;
JSONObject uidJson = account.getUid() ;
uid = uidJson.getString("uid") ;

Users users = new Users() ;
users.client.setToken(accessToken) ;
User weiboUser = users.showUserById(uid) ;
username = weiboUser.getName() ;
screenName = weiboUser.getScreenName() ;


} catch (WeiboException | IOException | JSONException e) {
e.printStackTrace();
}
out.println("微博访问Token_Info:" + accessTokenObj + "\t");
out.println("微博访问Token:" + accessToken + "\t");
out.println("微博用户-Uid:" + uid + "\t");
out.println("微博用户-名称:" + screenName + "\t");
out.flush();
out.close();*/
  

使用新浪微博开放平台api同步微博内容至自己网站(本次开放微博渠道接口,不需要验证网站地址。。)

网站优化优采云 发表了文章 • 0 个评论 • 64 次浏览 • 2022-01-10 10:19 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(本次开放微博渠道接口,不需要验证网站地址。。)
  此次开通微博频道界面,为广大站长提供了更便捷的申请方式。
  不仅需要在管理后台点击应用,还可以将内容同步到微博,显示来自自己网站。
  无需等待开放平台审核,无需去微博开放平台申请,无需验证网站地址。
  新浪微博为您提供支持和开放渠道接口,目前实现了以下功能。
  发布更新文章,同时发布到微博时,来源显示为网站自定义的名称,链接地址为本站自定义链接。它非常强大吗?!
  
  要实现这个功能,只需要简单的 3 个步骤:
  【第一步】打开管理后台,进入设置,滚动至底部:设置新浪微博频道AppKey。
  
  【第二步】输入站点名称和网站url:网站的名称将显示为微博来源,不超过5个汉字,或10个英文/数字。url:点击源后指向的网站网址,我们默认为您填写。
  【第三步】授权此api:使用此时登录的wp账号对应的新浪微博账号授权此api。
  
  完毕!发帖文章来测试一下吧~
  注意:
  1.微博默认会在站点名称后加一个_ds logo,这样站点就不会和原微博注册冲突了;
  2.仅对拥有授权微博账号且在有效期内的用户,同步时会显示来源;
  3.在内测期间,新浪微博只提供7天的授权,您可以在页面更新授权。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(本次开放微博渠道接口,不需要验证网站地址。。)
  此次开通微博频道界面,为广大站长提供了更便捷的申请方式。
  不仅需要在管理后台点击应用,还可以将内容同步到微博,显示来自自己网站。
  无需等待开放平台审核,无需去微博开放平台申请,无需验证网站地址。
  新浪微博为您提供支持和开放渠道接口,目前实现了以下功能。
  发布更新文章,同时发布到微博时,来源显示为网站自定义的名称,链接地址为本站自定义链接。它非常强大吗?!
  
  要实现这个功能,只需要简单的 3 个步骤:
  【第一步】打开管理后台,进入设置,滚动至底部:设置新浪微博频道AppKey。
  
  【第二步】输入站点名称和网站url:网站的名称将显示为微博来源,不超过5个汉字,或10个英文/数字。url:点击源后指向的网站网址,我们默认为您填写。
  【第三步】授权此api:使用此时登录的wp账号对应的新浪微博账号授权此api。
  
  完毕!发帖文章来测试一下吧~
  注意:
  1.微博默认会在站点名称后加一个_ds logo,这样站点就不会和原微博注册冲突了;
  2.仅对拥有授权微博账号且在有效期内的用户,同步时会显示来源;
  3.在内测期间,新浪微博只提供7天的授权,您可以在页面更新授权。

使用新浪微博开放平台api同步微博内容至自己网站(我是移动应用开发者,在我的应用中集成微博的功能)

网站优化优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2022-01-10 03:09 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(我是移动应用开发者,在我的应用中集成微博的功能)
  我是一名移动应用开发者,我想在我的应用中集成微博的功能
  移动应用
  微博开放平台为移动应用开发者提供了一个简单的开发框架,多平台、多终端的sdk,将帮助您将微博的功能集成到您的应用或wap站中。
  IOS H5
  我想为企业开发微博平台的应用,服务企业号和他的客户
  商业服务
  通过微博开放平台提供的接口和渠道,企业开发者为微博账号提供与用户私信交互、首页定制、数据分析等服务,即微服务。微服务只支持企业开发者申请访问。
  轻应用微博支付
  更多可以帮助您的文档
  新手指南在访问网站和开发应用之前,你需要知道如何成为平台的开发者,如何创建应用,提交审核,最终让微博用户在微博上找到你发布的应用微博应用广场。
  大部分API的访问,比如发微博、获取私信、关注,都需要用户身份。目前,微博开放平台的用户身份认证使用oauth2.0协议,并提供对Web、桌面和移动应用的支持。.
  API文档:包括微博相关API、公共服务API、地理信息API。对于API,您还可以在文档调用页面进行评分和反馈,以便我们更好地为您提供接口支持。
  开发包:包括ios、android、java、php、python等多种语言。实现接入第三方wap站、客户端等各种应用。
  了解微博开放平台的政策和规范,清楚地开发和运营自己的应用程序:平台约定,,,,。
  常见问题 应用相关问题包括:应用管理、审计、高级接口和特殊权限、应用调优;接口问题如接口策略等问题。您可以在此处查看和解决它们。
  语言:中文
  从 ””
  文件更新时间:2017-09-13 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(我是移动应用开发者,在我的应用中集成微博的功能)
  我是一名移动应用开发者,我想在我的应用中集成微博的功能
  移动应用
  微博开放平台为移动应用开发者提供了一个简单的开发框架,多平台、多终端的sdk,将帮助您将微博的功能集成到您的应用或wap站中。
  IOS H5
  我想为企业开发微博平台的应用,服务企业号和他的客户
  商业服务
  通过微博开放平台提供的接口和渠道,企业开发者为微博账号提供与用户私信交互、首页定制、数据分析等服务,即微服务。微服务只支持企业开发者申请访问。
  轻应用微博支付
  更多可以帮助您的文档
  新手指南在访问网站和开发应用之前,你需要知道如何成为平台的开发者,如何创建应用,提交审核,最终让微博用户在微博上找到你发布的应用微博应用广场。
  大部分API的访问,比如发微博、获取私信、关注,都需要用户身份。目前,微博开放平台的用户身份认证使用oauth2.0协议,并提供对Web、桌面和移动应用的支持。.
  API文档:包括微博相关API、公共服务API、地理信息API。对于API,您还可以在文档调用页面进行评分和反馈,以便我们更好地为您提供接口支持。
  开发包:包括ios、android、java、php、python等多种语言。实现接入第三方wap站、客户端等各种应用。
  了解微博开放平台的政策和规范,清楚地开发和运营自己的应用程序:平台约定,,,,。
  常见问题 应用相关问题包括:应用管理、审计、高级接口和特殊权限、应用调优;接口问题如接口策略等问题。您可以在此处查看和解决它们。
  语言:中文
  从 ””
  文件更新时间:2017-09-13

使用新浪微博开放平台api同步微博内容至自己网站(注册新浪微博03登陆新浪开放平台09创建应用获取AccessToken09 )

网站优化优采云 发表了文章 • 0 个评论 • 74 次浏览 • 2022-01-10 03:09 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(注册新浪微博03登陆新浪开放平台09创建应用获取AccessToken09
)
  前段时间,我抓取了微博的数据。想过用htmlunit模拟登录新浪微博抓取数据。这两天看了新浪微博官方API,发现可以通过新浪微博官方API获取新浪微博。信息,更全面,更简单。以下是从注册新浪微博,到完善新浪微博开放平台开发者信息,再创建应用获取Access Token,最后开发自己的应用。
  1 注册126个邮箱
  
  02注册新浪微博
  
  03 登录新浪微博
  
  04 登陆新浪开放平台
  
  05查看微博API
  
  06 可以看到获得用户关注的用户信息列表
  
  07 打开api测试工具
  
  08创建应用获取AccessToken
  
  09 创建应用
  
  10选择应用类型
  
  11 完成开发者信息(如果之前已经完善了开发者信息,则跳过此步骤)
  
  12 完整的开发者信息
  
  13 完成电子邮件确认
  
  14 创建应用程序
  
  15 成功创建应用(此处Appkey暂时不可用)
  
  16 回到API测试用户关系的地方
  
  17 找到我的uid(在个人主页,后面最后一个数字是个人uid)
  
  18 如果可以看到,请关注此用户
  
  19 最终结果,调用新浪微博的api,可以看到获取到的数据为json格式
  
  以上完成后,在网页上成功调用新浪微博提供的api接口。接下来,您需要编写一个程序来实现它。程序是模拟这个网页发送请求,返回的数据是json格式,数据字段已经定义好了。
  比如模拟这个请求,然后解析数据:
  
  做完这些,就该开始正式开发微博数据分析程序了。
   查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(注册新浪微博03登陆新浪开放平台09创建应用获取AccessToken09
)
  前段时间,我抓取了微博的数据。想过用htmlunit模拟登录新浪微博抓取数据。这两天看了新浪微博官方API,发现可以通过新浪微博官方API获取新浪微博。信息,更全面,更简单。以下是从注册新浪微博,到完善新浪微博开放平台开发者信息,再创建应用获取Access Token,最后开发自己的应用。
  1 注册126个邮箱
  
  02注册新浪微博
  
  03 登录新浪微博
  
  04 登陆新浪开放平台
  
  05查看微博API
  
  06 可以看到获得用户关注的用户信息列表
  
  07 打开api测试工具
  
  08创建应用获取AccessToken
  
  09 创建应用
  
  10选择应用类型
  
  11 完成开发者信息(如果之前已经完善了开发者信息,则跳过此步骤)
  
  12 完整的开发者信息
  
  13 完成电子邮件确认
  
  14 创建应用程序
  
  15 成功创建应用(此处Appkey暂时不可用)
  
  16 回到API测试用户关系的地方
  
  17 找到我的uid(在个人主页,后面最后一个数字是个人uid)
  
  18 如果可以看到,请关注此用户
  
  19 最终结果,调用新浪微博的api,可以看到获取到的数据为json格式
  
  以上完成后,在网页上成功调用新浪微博提供的api接口。接下来,您需要编写一个程序来实现它。程序是模拟这个网页发送请求,返回的数据是json格式,数据字段已经定义好了。
  比如模拟这个请求,然后解析数据:
  
  做完这些,就该开始正式开发微博数据分析程序了。
  

使用新浪微博开放平台api同步微博内容至自己网站(怎么把微信朋友圈同步到新浪微博呢?的图片文字一一复制粘帖)

网站优化优采云 发表了文章 • 0 个评论 • 75 次浏览 • 2022-01-06 19:07 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(怎么把微信朋友圈同步到新浪微博呢?的图片文字一一复制粘帖)
  微信朋友圈里的东西也可以同步到新浪微博。你刚刚知道你出去了。那么,微信朋友圈怎么同步到新浪微博呢?下面小编为大家带来微信朋友圈同步到新浪微博的教程。无需将朋友圈的图片和文字一一复制粘贴。是不是很棒?
  
  将微信朋友圈同步到新浪微博
  在微信公众号和朋友圈疯狂挤压个人时间的当下,很多人的微博都逐渐被抛弃了,这个工具可以帮你自动同步任何朋友圈图文内容到你的微博上。
  这个可以为你省去很多麻烦的小工具叫做“同步圈”。顾名思义,就是把你的“朋友圈”“同步”到微博。
  
  将微信朋友圈同步到新浪微博
  为了一劳永逸地享受自动同步的便利,您需要提前在PC浏览器中使用您的个人微博账号登录同步推文。网址在这里。获得登录授权后,网页上会显示二维码。用微信扫一扫后,添加一个名为“同步圈”的个人微信账号,很快就会通过验证。
  接下来,您需要将二维码下方的四位验证码发送到“同步圈”账号,系统会提示您绑定成功!
  经测试,“同步圈”目前支持纯文本、文本+表情、文本+图片的自动同步。您在朋友圈发布的小视频和地理位置无法同步到您的个人微博。经过实测,我也发现一些特殊的表情符号会被“同步圈”误识别,可能会造成一些歧义或误解。这大概是微信朋友圈和微博支持的表情不一致造成的。
  从原理上看,“同步圈”调用微信朋友圈侧的某些内容识别接口,可以自动抓取绑定用户的朋友圈内容,然后利用微博开放平台的API接口发送相同内容出去。抽象地说,“同步圈”与著名的自动化服务IFTTT非常相似。它刚刚在微信封闭的城墙上开设了一个单向流量信息站,帮助用户将内容输出到更广阔的公共网络空间。
  遗憾的是,根据pc6编辑对腾讯和微信团队的了解,这个同步圈的“小聪明”可能很快就会失败。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(怎么把微信朋友圈同步到新浪微博呢?的图片文字一一复制粘帖)
  微信朋友圈里的东西也可以同步到新浪微博。你刚刚知道你出去了。那么,微信朋友圈怎么同步到新浪微博呢?下面小编为大家带来微信朋友圈同步到新浪微博的教程。无需将朋友圈的图片和文字一一复制粘贴。是不是很棒?
  
  将微信朋友圈同步到新浪微博
  在微信公众号和朋友圈疯狂挤压个人时间的当下,很多人的微博都逐渐被抛弃了,这个工具可以帮你自动同步任何朋友圈图文内容到你的微博上。
  这个可以为你省去很多麻烦的小工具叫做“同步圈”。顾名思义,就是把你的“朋友圈”“同步”到微博。
  
  将微信朋友圈同步到新浪微博
  为了一劳永逸地享受自动同步的便利,您需要提前在PC浏览器中使用您的个人微博账号登录同步推文。网址在这里。获得登录授权后,网页上会显示二维码。用微信扫一扫后,添加一个名为“同步圈”的个人微信账号,很快就会通过验证。
  接下来,您需要将二维码下方的四位验证码发送到“同步圈”账号,系统会提示您绑定成功!
  经测试,“同步圈”目前支持纯文本、文本+表情、文本+图片的自动同步。您在朋友圈发布的小视频和地理位置无法同步到您的个人微博。经过实测,我也发现一些特殊的表情符号会被“同步圈”误识别,可能会造成一些歧义或误解。这大概是微信朋友圈和微博支持的表情不一致造成的。
  从原理上看,“同步圈”调用微信朋友圈侧的某些内容识别接口,可以自动抓取绑定用户的朋友圈内容,然后利用微博开放平台的API接口发送相同内容出去。抽象地说,“同步圈”与著名的自动化服务IFTTT非常相似。它刚刚在微信封闭的城墙上开设了一个单向流量信息站,帮助用户将内容输出到更广阔的公共网络空间。
  遗憾的是,根据pc6编辑对腾讯和微信团队的了解,这个同步圈的“小聪明”可能很快就会失败。

使用新浪微博开放平台api同步微博内容至自己网站(网络真是麻烦怎么办?指令是做什么的?)

网站优化优采云 发表了文章 • 0 个评论 • 48 次浏览 • 2022-01-06 19:04 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(网络真是麻烦怎么办?指令是做什么的?)
  是不是因为我不是这个专业的?突然觉得上网真的很麻烦,尤其是要实现某个功能的编程,但是如果有时间,我会学习的。毕竟,我自己的程序可以让自己放心,没有广告,没有垃圾,并且知道哪个指令做了什么。
  我前天注册了一个IFTTT账号。我刚注册后没用过。我使用了其他人分享的食谱来构建自己的同步并实现 Twitter 的定时天气预报。后来发现自己想实现的某个功能很难找到,于是自己尝试了一下。搭建一个其实很简单,但是有一种人叫-新手,我也是新手,不过现在可以了。
  昨天突然想把推特和国内的微博同步,但是因为是国内的微博,IFTTT对自己的服务质量和国内的各种网络监控和防火墙造成了困难,最后想出了解决办法。: 搭建一个wordpress(有免费的,我最后给),用搭建好的wordpress作为转账,此时IFTTT支持twitter同步到wordpress(配方点这里,我设置了原创时间转账,所以评论的转推不会同步),Facebook和Tumblr也是一样的,下面是一样的。这只是完成了一个中介;
  下一步就是将wordpress中的博客内容(申请WP教程)同步到各个微博。这个过程可以在 wordpress 插件的帮助下实现。我总共测试了两个插件:
  一、wp-sns-share
  这个插件已经测试可以实现手动发博文,但是IFTTT自动发的文章不会自动转发,所以放弃了。如果手动更新,可以选择。
  二、新版微博通同步
  本插件经过测试,可以很好的实现以上功能,目测延时很短。设置时,您只需登录您注册的微博通账号即可。缺点是需要额外申请微博通账号并自动发布。's微博显示“微博通发布”,他对新浪微博的授权有时间限制:30天,其实还不错,一个月就新授权一次
  三.代码方法(20140320补充,来自+King Goo的博客)
  该方法需要使用新浪的接口,如下:
  1) 前往新浪微博开放平台创建站内应用。审核通过也可以,审核通过了就可以在微博下展示某博客的申请,比如某博客。你可以在谷歌搜索上创建就可以了,很简单(但是如果你没有通过审核想通过审核,我可以提供付费帮助嘎嘎~),创建应用后需要使用App Key以下申请的申请;
  2)编辑你的主题的functions.php文件并在最后添加以下代码
  
// 微博同步
function post_to_sina_weibo($post_ID) {
if( wp_is_post_revision($post_ID) ) return;
$get_post_info = get_post($post_ID);
$get_post_centent = get_post($post_ID)->post_content;
//去掉文章内的html编码的空格、换行、tab等符号(如果你文章的编码格式是这样子,可以将下面的"//"去掉即开启此功能)
//$get_post_centent = str_replace("\t", " ", str_replace("\n", " ", str_replace(" ", " ", $get_post_centent)));
$get_post_title = get_post($post_ID)->post_title;
if ( $get_post_info->post_status == 'publish' && $_POST['original_post_status'] != 'publish' ) {
$request = new WP_Http;
$status = '【' . strip_tags( $get_post_title ) . '】 ' . mb_strimwidth(strip_tags( apply_filters('the_content', $get_post_centent)),0, 132,'...') . ' 全文地址:' . get_permalink($post_ID) ;
$api_url = 'https://api.weibo.com/2/statuses/update.json';
$body = array( 'status' => $status, 'source'=>'4135063399');
$headers = array( 'Authorization' => 'Basic ' . '1fFjYc3uQHZpcF32fS5jb146MxFeY19DYF53aWfzNA==' );

$result = $request->post( $api_url , array( 'body' => $body, 'headers' => $headers ) );
}
}
add_action('publish_post', 'post_to_sina_weibo', 0);
  你可能应该知道这意味着什么
  如果(wp_is_post_revision($post_ID))返回;
  //如果是修改版 $get_post_info = get_post($post_ID);
  //获取文章信息
  $get_post_centent =get_post($post_ID)-&gt;post_content;
  //文章Content(不知道为什么使用了所有post_ID数据后获取不到内容,所以只在请求下)
  $get_post_title =get_post($post_ID)-&gt;post_title;
  //文章标题
  if ($get_post_info-&gt;post_status =='publish' &amp;&amp;$_POST['original_post_status'] !='publish') {
  //判断是发布的文章还是页面
  $status ='['。strip_tags( $get_post_title).'] '.mb_strimwidth(strip_tags( apply_filters('the_content',$get_post_centent)),0, 132,'...').' 全文地址:'.get_permalink($post_ID);
  //strip_tags( $get_post_title) 就是获取文章标题
  // mb_strimwidth(strip_tags( apply_filters('the_content',$get_post_centent)),0, 132,'...') 是截取的长度文章
  //get_permalink($post_ID) 文章 链接地址
  $api_url ='';
  //旧接口不能用了,必须用v2.0
  $body =array('status' =&gt; $status,'source'=&gt;'4135063399');
  // $status要发布的微博文字内容,内容不超过140个汉字
  // $source 的值是应用程序的AppKey
  $headers = array('Authorization' =&gt;'Basic '.'bate64 编码加密');
  //'bate64编码加密'的位置在这里,你可以自己加密你的账号和密码,格式为你的新浪微博登录账号:登录密码(例如:密码)
  //如果你不喜欢用这种方式 $headers = array('Authorization' =&gt;'Basic '.'Bate64 encoding encryption'),就用下面的方法代替,一样
  //您的新浪微博登录名
  $用户名 = ";
  //您的新浪微博登录密码
  $密码 = ”;
  $headers = array('Authorization' =&gt;'Basic '.base64_encode('$username:$password'));
  最后,在您发送博文后,一条消息将立即同步到微博
  微博接口请求参数:
  必需的
  类型和范围
  操作说明
  来源
  错误的
  细绳
  OAuth授权方式不需要该参数,其他授权方式为必选参数,值为应用的AppKey
  地位
  真的
  细绳
  发布的微博文字内容必须经过URL编码,内容不得超过140个汉字。
  可见的
  错误的
  整数
  微博可见度,0:所有人可见,1:只有自己可见,2:密友可见,3:指定群组可见,默认为0。
  访问令牌
  错误的
  细绳
  OAuth授权方式为必填参数,其他授权方式不需要此参数,OAuth授权后获取。
  list_id
  错误的
  细绳
  微博的受保护传递指定了组ID,仅当visible 参数为3 时才生效,并且是必需的。
  纬度
  错误的
  漂浮
  纬度,有效范围:-90.0 to +90.0,+表示北纬,默认为0.0。
  长
  错误的
  漂浮
  经度,有效范围:-180.0 to +180.0,+表示东经,默认为0.0。
  注释
  错误的
  细绳
  元数据主要是为了方便第三方应用记录一些适合自己使用的信息。每个微博可以收录一个或多个元数据,必须以json字符串的形式提交,字符串长度不能超过512个字符。具体内容可定制。
  这几乎是我这两天所做的。为了测试这个同步,我变得可笑了。昨天刷了半天,呵呵。
  
  还有一个推特机器人,可以实现一些关键词自动回复、自动推文和常规推文,网址:点此。有英文和日文两种语言,看看应该能操作。
  接下来大家可以看看我同步的结果,我的推特,我的wordpress,我的新浪微博,我的腾讯微博,因为那个推特的图片都是链接的形式,所以对于有图片的推文,有同步时会报错:missing or missing。
  最后吐槽:尼玛的FGW!!!!!!!! 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(网络真是麻烦怎么办?指令是做什么的?)
  是不是因为我不是这个专业的?突然觉得上网真的很麻烦,尤其是要实现某个功能的编程,但是如果有时间,我会学习的。毕竟,我自己的程序可以让自己放心,没有广告,没有垃圾,并且知道哪个指令做了什么。
  我前天注册了一个IFTTT账号。我刚注册后没用过。我使用了其他人分享的食谱来构建自己的同步并实现 Twitter 的定时天气预报。后来发现自己想实现的某个功能很难找到,于是自己尝试了一下。搭建一个其实很简单,但是有一种人叫-新手,我也是新手,不过现在可以了。
  昨天突然想把推特和国内的微博同步,但是因为是国内的微博,IFTTT对自己的服务质量和国内的各种网络监控和防火墙造成了困难,最后想出了解决办法。: 搭建一个wordpress(有免费的,我最后给),用搭建好的wordpress作为转账,此时IFTTT支持twitter同步到wordpress(配方点这里,我设置了原创时间转账,所以评论的转推不会同步),Facebook和Tumblr也是一样的,下面是一样的。这只是完成了一个中介;
  下一步就是将wordpress中的博客内容(申请WP教程)同步到各个微博。这个过程可以在 wordpress 插件的帮助下实现。我总共测试了两个插件:
  一、wp-sns-share
  这个插件已经测试可以实现手动发博文,但是IFTTT自动发的文章不会自动转发,所以放弃了。如果手动更新,可以选择。
  二、新版微博通同步
  本插件经过测试,可以很好的实现以上功能,目测延时很短。设置时,您只需登录您注册的微博通账号即可。缺点是需要额外申请微博通账号并自动发布。's微博显示“微博通发布”,他对新浪微博的授权有时间限制:30天,其实还不错,一个月就新授权一次
  三.代码方法(20140320补充,来自+King Goo的博客)
  该方法需要使用新浪的接口,如下:
  1) 前往新浪微博开放平台创建站内应用。审核通过也可以,审核通过了就可以在微博下展示某博客的申请,比如某博客。你可以在谷歌搜索上创建就可以了,很简单(但是如果你没有通过审核想通过审核,我可以提供付费帮助嘎嘎~),创建应用后需要使用App Key以下申请的申请;
  2)编辑你的主题的functions.php文件并在最后添加以下代码
  
// 微博同步
function post_to_sina_weibo($post_ID) {
if( wp_is_post_revision($post_ID) ) return;
$get_post_info = get_post($post_ID);
$get_post_centent = get_post($post_ID)->post_content;
//去掉文章内的html编码的空格、换行、tab等符号(如果你文章的编码格式是这样子,可以将下面的"//"去掉即开启此功能)
//$get_post_centent = str_replace("\t", " ", str_replace("\n", " ", str_replace(" ", " ", $get_post_centent)));
$get_post_title = get_post($post_ID)->post_title;
if ( $get_post_info->post_status == 'publish' && $_POST['original_post_status'] != 'publish' ) {
$request = new WP_Http;
$status = '【' . strip_tags( $get_post_title ) . '】 ' . mb_strimwidth(strip_tags( apply_filters('the_content', $get_post_centent)),0, 132,'...') . ' 全文地址:' . get_permalink($post_ID) ;
$api_url = 'https://api.weibo.com/2/statuses/update.json';
$body = array( 'status' => $status, 'source'=>'4135063399');
$headers = array( 'Authorization' => 'Basic ' . '1fFjYc3uQHZpcF32fS5jb146MxFeY19DYF53aWfzNA==' );

$result = $request->post( $api_url , array( 'body' => $body, 'headers' => $headers ) );
}
}
add_action('publish_post', 'post_to_sina_weibo', 0);
  你可能应该知道这意味着什么
  如果(wp_is_post_revision($post_ID))返回;
  //如果是修改版 $get_post_info = get_post($post_ID);
  //获取文章信息
  $get_post_centent =get_post($post_ID)-&gt;post_content;
  //文章Content(不知道为什么使用了所有post_ID数据后获取不到内容,所以只在请求下)
  $get_post_title =get_post($post_ID)-&gt;post_title;
  //文章标题
  if ($get_post_info-&gt;post_status =='publish' &amp;&amp;$_POST['original_post_status'] !='publish') {
  //判断是发布的文章还是页面
  $status ='['。strip_tags( $get_post_title).'] '.mb_strimwidth(strip_tags( apply_filters('the_content',$get_post_centent)),0, 132,'...').' 全文地址:'.get_permalink($post_ID);
  //strip_tags( $get_post_title) 就是获取文章标题
  // mb_strimwidth(strip_tags( apply_filters('the_content',$get_post_centent)),0, 132,'...') 是截取的长度文章
  //get_permalink($post_ID) 文章 链接地址
  $api_url ='';
  //旧接口不能用了,必须用v2.0
  $body =array('status' =&gt; $status,'source'=&gt;'4135063399');
  // $status要发布的微博文字内容,内容不超过140个汉字
  // $source 的值是应用程序的AppKey
  $headers = array('Authorization' =&gt;'Basic '.'bate64 编码加密');
  //'bate64编码加密'的位置在这里,你可以自己加密你的账号和密码,格式为你的新浪微博登录账号:登录密码(例如:密码)
  //如果你不喜欢用这种方式 $headers = array('Authorization' =&gt;'Basic '.'Bate64 encoding encryption'),就用下面的方法代替,一样
  //您的新浪微博登录名
  $用户名 = ";
  //您的新浪微博登录密码
  $密码 = ”;
  $headers = array('Authorization' =&gt;'Basic '.base64_encode('$username:$password'));
  最后,在您发送博文后,一条消息将立即同步到微博
  微博接口请求参数:
  必需的
  类型和范围
  操作说明
  来源
  错误的
  细绳
  OAuth授权方式不需要该参数,其他授权方式为必选参数,值为应用的AppKey
  地位
  真的
  细绳
  发布的微博文字内容必须经过URL编码,内容不得超过140个汉字。
  可见的
  错误的
  整数
  微博可见度,0:所有人可见,1:只有自己可见,2:密友可见,3:指定群组可见,默认为0。
  访问令牌
  错误的
  细绳
  OAuth授权方式为必填参数,其他授权方式不需要此参数,OAuth授权后获取。
  list_id
  错误的
  细绳
  微博的受保护传递指定了组ID,仅当visible 参数为3 时才生效,并且是必需的。
  纬度
  错误的
  漂浮
  纬度,有效范围:-90.0 to +90.0,+表示北纬,默认为0.0。
  长
  错误的
  漂浮
  经度,有效范围:-180.0 to +180.0,+表示东经,默认为0.0。
  注释
  错误的
  细绳
  元数据主要是为了方便第三方应用记录一些适合自己使用的信息。每个微博可以收录一个或多个元数据,必须以json字符串的形式提交,字符串长度不能超过512个字符。具体内容可定制。
  这几乎是我这两天所做的。为了测试这个同步,我变得可笑了。昨天刷了半天,呵呵。
  
  还有一个推特机器人,可以实现一些关键词自动回复、自动推文和常规推文,网址:点此。有英文和日文两种语言,看看应该能操作。
  接下来大家可以看看我同步的结果,我的推特,我的wordpress,我的新浪微博,我的腾讯微博,因为那个推特的图片都是链接的形式,所以对于有图片的推文,有同步时会报错:missing or missing。
  最后吐槽:尼玛的FGW!!!!!!!!

使用新浪微博开放平台api同步微博内容至自己网站(FanlyWeibo新浪微博同步插件(WordPress插件安装教程)(组图))

网站优化优采云 发表了文章 • 0 个评论 • 68 次浏览 • 2022-01-06 08:09 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(FanlyWeibo新浪微博同步插件(WordPress插件安装教程)(组图))
  Fanly微博是紫帆为WordPress程序设计开发的新浪微博同步插件。可以在WordPress发布文章时自动将微博内容与图文同步,支持自定义文章类型,定时文章、微博延时同步等丰富功能。
  
  如果您购买了Fanly微博新浪微博同步插件,请务必仔细阅读以下所有操作和步骤,否则您可能无法正常使用该插件。
  Fanly微博插件安装
  1.购买并下载Fanly-Weibo.zip插件文件;
  2. 在线或FTP上传并安装Fanly微博插件并启用。(WordPress插件安装教程)
  Fanly微博插件配置
  1. 通过“WordPress后台-&gt;设置-&gt;粉丝微博”进入插件设置页面(如下图)。
  
  2. 插件首次安装或重置时会出现最简单的设置页面。只能输入微博APP Key和APP Secret才能进入插件完成页面。通过微博开放平台进入申请页面,如下图填写并保存相应信息。
  
  3. 设置并保存微博APP Key和APP Secret后,会显示完整的Fanly微博插件设置页面,如下图:
  
  4.微博令牌:点击“获取令牌”开始获取微博用户的授权令牌,所以如果你已经登录微博账号,可能会提示你授权,确认后继续,如果出现错误提示出现,请先查看本用户手册中的“Fanly微博常见问题”以查看解决方案。如果您想查看相关解决方案,请复制错误信息并通过Fanly微博插件页面留给我们。
  5.延迟时间:该功能是范力微博V3.3中推出的新功能。它利用WordPress的定时任务功能来延迟微博内容的同步。简单的说,当我们通过WordPress发布一篇文章文章时,我不希望它尽快同步到微博,所以通过设置延迟时间,可以实现微博内容同步后文章 发布后多少分钟。
  6. 支持类型:可能你的WordPress主题很强大,功能也很多,所以有很多自定义类型文章或者内容。这里的插件也是支持的,所以你需要检查一下你需要支持的类型,以保证插件在发布的时候可以正常使用。
  7.授权回调页面:该选项不可编辑,内容作为配置微博应用信息-&gt;高级信息-&gt;OAuth2.0授权设置-&gt;授权回调页面/取消授权回调页面设置, 授权回调页面和取消授权回调页面的填写方式相同。如下所示:
  
  8. 是否支持摘要:该功能支持WordPress 文章 内容摘要支持。如果设置了摘要内容,启用该功能会先同步摘要内容,否则插件会先提取文章 超过微博界面同步长度的片段内容会被自动拦截。
  9. 是否默认同步:勾选后会默认同步,也可以在发布时选择延迟/立即/取消同步文章!
  10. 保存更改。完成设置后,请记得保存更改以完成所有插件配置。
  微博应用设置
  配置插件信息后,还需要在微博应用中设置两个地方,一个是授权回调页面和去授权回调页面,一个是安全域名。
  授权回调页面/取消授权回调页面:微博开放平台-&gt;我的申请-&gt;具体申请页面-&gt;申请信息-&gt;高级信息-&gt;OAuth2.0 授权设置-&gt;授权回调页面/取消授权回调页面,这两个地址是通过插件配置页面中的“授权回调页面”获取的,两者地址相同。
  安全域名:微博开放平台-&gt;我的应用-&gt;具体应用页面-&gt;应用信息-&gt;基本信息,通过编辑添加当前插件网站所在的域名地址。
  Fanly微博常见问题
  Q:代币获取失败
  A:当您点击“获取Token”页面提示错误时,请确认并通过“应用信息-&gt;高级信息-&gt;OAuth2.0授权设置-&gt;授权回调”设置授权回调页面地址页面/取消授权回调页面”,详细设置请参考上面范力微博插件配置中的第7步。
  Q:微博无法同步的情况
  A:微博无法同步可能有以下三种情况:1.token过期,您可以再次尝试“获取Token”;2. 微博应用未设置“安全域名”,通过“微博开放平台”-&gt;我的应用-&gt;具体应用页面-&gt;应用信息-&gt;基本信息”编辑并添加安全域名; 3. 请确保微博申请已通过“审核”。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(FanlyWeibo新浪微博同步插件(WordPress插件安装教程)(组图))
  Fanly微博是紫帆为WordPress程序设计开发的新浪微博同步插件。可以在WordPress发布文章时自动将微博内容与图文同步,支持自定义文章类型,定时文章、微博延时同步等丰富功能。
  
  如果您购买了Fanly微博新浪微博同步插件,请务必仔细阅读以下所有操作和步骤,否则您可能无法正常使用该插件。
  Fanly微博插件安装
  1.购买并下载Fanly-Weibo.zip插件文件;
  2. 在线或FTP上传并安装Fanly微博插件并启用。(WordPress插件安装教程)
  Fanly微博插件配置
  1. 通过“WordPress后台-&gt;设置-&gt;粉丝微博”进入插件设置页面(如下图)。
  
  2. 插件首次安装或重置时会出现最简单的设置页面。只能输入微博APP Key和APP Secret才能进入插件完成页面。通过微博开放平台进入申请页面,如下图填写并保存相应信息。
  
  3. 设置并保存微博APP Key和APP Secret后,会显示完整的Fanly微博插件设置页面,如下图:
  
  4.微博令牌:点击“获取令牌”开始获取微博用户的授权令牌,所以如果你已经登录微博账号,可能会提示你授权,确认后继续,如果出现错误提示出现,请先查看本用户手册中的“Fanly微博常见问题”以查看解决方案。如果您想查看相关解决方案,请复制错误信息并通过Fanly微博插件页面留给我们。
  5.延迟时间:该功能是范力微博V3.3中推出的新功能。它利用WordPress的定时任务功能来延迟微博内容的同步。简单的说,当我们通过WordPress发布一篇文章文章时,我不希望它尽快同步到微博,所以通过设置延迟时间,可以实现微博内容同步后文章 发布后多少分钟。
  6. 支持类型:可能你的WordPress主题很强大,功能也很多,所以有很多自定义类型文章或者内容。这里的插件也是支持的,所以你需要检查一下你需要支持的类型,以保证插件在发布的时候可以正常使用。
  7.授权回调页面:该选项不可编辑,内容作为配置微博应用信息-&gt;高级信息-&gt;OAuth2.0授权设置-&gt;授权回调页面/取消授权回调页面设置, 授权回调页面和取消授权回调页面的填写方式相同。如下所示:
  
  8. 是否支持摘要:该功能支持WordPress 文章 内容摘要支持。如果设置了摘要内容,启用该功能会先同步摘要内容,否则插件会先提取文章 超过微博界面同步长度的片段内容会被自动拦截。
  9. 是否默认同步:勾选后会默认同步,也可以在发布时选择延迟/立即/取消同步文章!
  10. 保存更改。完成设置后,请记得保存更改以完成所有插件配置。
  微博应用设置
  配置插件信息后,还需要在微博应用中设置两个地方,一个是授权回调页面和去授权回调页面,一个是安全域名。
  授权回调页面/取消授权回调页面:微博开放平台-&gt;我的申请-&gt;具体申请页面-&gt;申请信息-&gt;高级信息-&gt;OAuth2.0 授权设置-&gt;授权回调页面/取消授权回调页面,这两个地址是通过插件配置页面中的“授权回调页面”获取的,两者地址相同。
  安全域名:微博开放平台-&gt;我的应用-&gt;具体应用页面-&gt;应用信息-&gt;基本信息,通过编辑添加当前插件网站所在的域名地址。
  Fanly微博常见问题
  Q:代币获取失败
  A:当您点击“获取Token”页面提示错误时,请确认并通过“应用信息-&gt;高级信息-&gt;OAuth2.0授权设置-&gt;授权回调”设置授权回调页面地址页面/取消授权回调页面”,详细设置请参考上面范力微博插件配置中的第7步。
  Q:微博无法同步的情况
  A:微博无法同步可能有以下三种情况:1.token过期,您可以再次尝试“获取Token”;2. 微博应用未设置“安全域名”,通过“微博开放平台”-&gt;我的应用-&gt;具体应用页面-&gt;应用信息-&gt;基本信息”编辑并添加安全域名; 3. 请确保微博申请已通过“审核”。

使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博内容至自己网站/小程序)

网站优化优采云 发表了文章 • 0 个评论 • 60 次浏览 • 2022-01-06 05:03 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博内容至自己网站/小程序)
  使用新浪微博开放平台api同步微博内容至自己网站/小程序使用乐讯api同步微博内容至自己网站/小程序后续再深入学习一下他们的开发,避免过度依赖服务器提供的数据接口(比如接入乐讯来同步微博内容,乐讯要求返回imgurl并把imgurl指向微博地址,才能获取微博数据),解决微博/小程序,比如需要将统计数据导出到txt保存使用lineapi同步微博内容至自己网站/小程序使用singaporeapi同步微博内容至自己网站/小程序使用信鸽api同步微博内容至自己网站/小程序解决小程序为复杂动态效果而无法获取数据(比如使用超链接,使用二维码)、个人博客中的数据无法同步至公共开放平台,同步服务器带宽/延迟等问题解决博客/博客,或其他平台markdown粘贴复制到wordpress中未能正确处理导入导出时的字符问题欢迎继续讨论。
  技术经验谈主要是es6ajax实现
  我们也在寻找有效的github同步,在微博中插入外链,实现博客的转发。现在可以关注github周报,每周都有实用技巧、github项目变化等。react中文社区不止于发布react相关信息,也包括大家经常关注的react和node,webpack,leancloud,redis,kibana,openstack等等。
  还有除了知道要发布一个react项目之外,对想要了解reactdevtools上面不断更新的新功能,也是很关注的。没有任何github要求,只要你的博客用户中有使用github的,就有机会以。阿里风投系生态圈wordpress作为谷歌公司的产品,受到了很多用户的欢迎。wordpress对于html5和webpack等web基础知识和web开发能力是需要一定的了解的。
  wordpress想要更好的发展,解决文章和静态页面同步问题,最好能给用户提供api。let'sencrypt大家都是知道的,postgresql项目的原始版本是基于let'sencrypt,其开发思路基于这个项目,现在不止想要解决权限问题,更希望能找到更多能够直接解决复杂权限的api。quip最近quip处于准备上线状态,希望能尽快把quip升级到postgresql3.4。你可以去官网看看,最后放一个api网址/~gohlke/pythonlibs/#python33。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博内容至自己网站/小程序)
  使用新浪微博开放平台api同步微博内容至自己网站/小程序使用乐讯api同步微博内容至自己网站/小程序后续再深入学习一下他们的开发,避免过度依赖服务器提供的数据接口(比如接入乐讯来同步微博内容,乐讯要求返回imgurl并把imgurl指向微博地址,才能获取微博数据),解决微博/小程序,比如需要将统计数据导出到txt保存使用lineapi同步微博内容至自己网站/小程序使用singaporeapi同步微博内容至自己网站/小程序使用信鸽api同步微博内容至自己网站/小程序解决小程序为复杂动态效果而无法获取数据(比如使用超链接,使用二维码)、个人博客中的数据无法同步至公共开放平台,同步服务器带宽/延迟等问题解决博客/博客,或其他平台markdown粘贴复制到wordpress中未能正确处理导入导出时的字符问题欢迎继续讨论。
  技术经验谈主要是es6ajax实现
  我们也在寻找有效的github同步,在微博中插入外链,实现博客的转发。现在可以关注github周报,每周都有实用技巧、github项目变化等。react中文社区不止于发布react相关信息,也包括大家经常关注的react和node,webpack,leancloud,redis,kibana,openstack等等。
  还有除了知道要发布一个react项目之外,对想要了解reactdevtools上面不断更新的新功能,也是很关注的。没有任何github要求,只要你的博客用户中有使用github的,就有机会以。阿里风投系生态圈wordpress作为谷歌公司的产品,受到了很多用户的欢迎。wordpress对于html5和webpack等web基础知识和web开发能力是需要一定的了解的。
  wordpress想要更好的发展,解决文章和静态页面同步问题,最好能给用户提供api。let'sencrypt大家都是知道的,postgresql项目的原始版本是基于let'sencrypt,其开发思路基于这个项目,现在不止想要解决权限问题,更希望能找到更多能够直接解决复杂权限的api。quip最近quip处于准备上线状态,希望能尽快把quip升级到postgresql3.4。你可以去官网看看,最后放一个api网址/~gohlke/pythonlibs/#python33。

使用新浪微博开放平台api同步微博内容至自己网站(极客公园观察家@NovaDNG发现新浪微博API更改内容原文)

网站优化优采云 发表了文章 • 0 个评论 • 42 次浏览 • 2022-01-05 07:00 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(极客公园观察家@NovaDNG发现新浪微博API更改内容原文)
  【核心提示】新浪微博悄悄改变了API,调整了获取微博内容和用户关系的界面返回结果。这对目前的第三方微博客户端有什么影响?
  编者按:极客公园观察者@NovaDNG 发现新浪微博在本周二(6月18日)悄悄改变了其API,并调整了获取微博内容和用户关系的界面返回结果。一方面,极客公园内部讨论了这一变化可能带来的影响。另一方面,采访了多位知名第三方微博客户端开发者,听取他们的意见。当然,我们也欢迎更多的人加入讨论。
  
  原创演示文稿
  6月18日新浪微博API变化原文引用如下(点此查看原文):
  当前授权的应用只能读取授权应用的当前用户的微博,无法获取其他用户的微博。具体界面如下:
  获取当前登录用户发布的微博消息列表(2/statuses/user_timeline)
  获取当前登录用户发布的微博消息ID列表(2/statuses/user_timeline/ids)
  当前授权的应用程序只能读取当前授权应用程序的用户的关系,不能读取其他用户的关系。具体界面如下:
  获取用户的关注列表(2/riendships/friends)
  获取普通关注者列表(2/friendships/friends/in_common)
  获取双向观察名单(2/友谊/朋友/双边)
  获取双向关注UID列表(2/friendships/friends/bilateral/ids)
  获取用户关注对象的UID列表(2/friendships/friends/ids)
  获取用户的粉丝列表(2/friendships/followers)
  获取用户的粉丝UID列表(2/friendships/followers/ids)
  获取用户优质粉丝列表(2/好友/关注/活跃)
  初步解释
  在仔细研究了这一变化后,我们内部的讨论得出了两种不同的观点:
  意见1:这些变化生效后,现有的第三方客户端将失去:
  阅读用户的主要时间线、评论和转发功能(一般第三方客户端的三大功能)
  查看其他用户的微博内容
  查看其他用户的关注和粉丝功能
  微博搜索、用户搜索等相关功能
  总之,生效后,第三方客户端基本失效,用户只会看到:
  微博
  自己的追随者和粉丝/活跃粉丝
  我自己和另一个用户的共同关心
  观点2:这只是新浪又一次强迫所有用户重新授权他们的第三方客户端:
  从原文的写法来看,这些改动都是针对“授权客户端”的,所以这次改动的效果就是取消了授权客户端的主要功能。当用户重新授权时,可以恢复原来的功能。设计这个变化的原因是:
  这是一个强制所有用户重新授权第三方客户端的过程
  提高数据爬取难度,针对已有的微博爬取数据行为
  之后,微博可能会为商业用户提供专门的数据分析接口和服务,就像现在的推特一样
  各种意见
  安卓平台第三方微博客户端第四维度开发者@进击的心头反对上述第二种解释。他认为更新后的API是同一个地址,也就是说,原来的API是什么权限,重新授权后或者是什么权限。旧界面和新界面没有区别,未来将不再允许第三方应用访问其他用户的微博列表。更新生效后,第三方应用将无法扫描微博列表,并出现“当前应用无权限”等错误提示。
  随后我们采访了安卓平台另一知名微博客户端Fuubo的开发者@RefacTech碎星。他已经在微博上表达了对此次API变更的担忧。在他看来,与新浪微博有官方合作关系的第三方应用,如Weico、Weige、ZAKER(该应用内置微博阅读功能,也可以视为第三方客户端),可能不会受到太大影响。,但其他一些自主开发的客户端也难逃他们的命运。不过,他也指出,即使新浪微博收紧API,第三方应用仍能以微博内容聚合阅读的形式继续存在,不会完全消亡。
  昨天下午(6月23日),新浪微博开放平台@微博开平台的验证账号给@RefacTech碎星发消息,称此次升级对第三方微博客户端没有影响。
  
  我们还联系了iOS平台微博客户端Weige的开发者,但截至发稿,他们并未对此发表评论。
  主要问题
  综合整个讨论过程和讨论内容,我们发现主要分歧点在于原创API更新日志中的“当前已授权应用”,由此提出以下问题:
  这是针对“已授权应用程序”还是针对所有第三方应用程序(无论它们是否经过用户重新授权)的更改?
  如果是第三方应用,会不会影响商业支付接口的第三方客户端?
  这种变化背后的考虑是什么? 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(极客公园观察家@NovaDNG发现新浪微博API更改内容原文)
  【核心提示】新浪微博悄悄改变了API,调整了获取微博内容和用户关系的界面返回结果。这对目前的第三方微博客户端有什么影响?
  编者按:极客公园观察者@NovaDNG 发现新浪微博在本周二(6月18日)悄悄改变了其API,并调整了获取微博内容和用户关系的界面返回结果。一方面,极客公园内部讨论了这一变化可能带来的影响。另一方面,采访了多位知名第三方微博客户端开发者,听取他们的意见。当然,我们也欢迎更多的人加入讨论。
  
  原创演示文稿
  6月18日新浪微博API变化原文引用如下(点此查看原文):
  当前授权的应用只能读取授权应用的当前用户的微博,无法获取其他用户的微博。具体界面如下:
  获取当前登录用户发布的微博消息列表(2/statuses/user_timeline)
  获取当前登录用户发布的微博消息ID列表(2/statuses/user_timeline/ids)
  当前授权的应用程序只能读取当前授权应用程序的用户的关系,不能读取其他用户的关系。具体界面如下:
  获取用户的关注列表(2/riendships/friends)
  获取普通关注者列表(2/friendships/friends/in_common)
  获取双向观察名单(2/友谊/朋友/双边)
  获取双向关注UID列表(2/friendships/friends/bilateral/ids)
  获取用户关注对象的UID列表(2/friendships/friends/ids)
  获取用户的粉丝列表(2/friendships/followers)
  获取用户的粉丝UID列表(2/friendships/followers/ids)
  获取用户优质粉丝列表(2/好友/关注/活跃)
  初步解释
  在仔细研究了这一变化后,我们内部的讨论得出了两种不同的观点:
  意见1:这些变化生效后,现有的第三方客户端将失去:
  阅读用户的主要时间线、评论和转发功能(一般第三方客户端的三大功能)
  查看其他用户的微博内容
  查看其他用户的关注和粉丝功能
  微博搜索、用户搜索等相关功能
  总之,生效后,第三方客户端基本失效,用户只会看到:
  微博
  自己的追随者和粉丝/活跃粉丝
  我自己和另一个用户的共同关心
  观点2:这只是新浪又一次强迫所有用户重新授权他们的第三方客户端:
  从原文的写法来看,这些改动都是针对“授权客户端”的,所以这次改动的效果就是取消了授权客户端的主要功能。当用户重新授权时,可以恢复原来的功能。设计这个变化的原因是:
  这是一个强制所有用户重新授权第三方客户端的过程
  提高数据爬取难度,针对已有的微博爬取数据行为
  之后,微博可能会为商业用户提供专门的数据分析接口和服务,就像现在的推特一样
  各种意见
  安卓平台第三方微博客户端第四维度开发者@进击的心头反对上述第二种解释。他认为更新后的API是同一个地址,也就是说,原来的API是什么权限,重新授权后或者是什么权限。旧界面和新界面没有区别,未来将不再允许第三方应用访问其他用户的微博列表。更新生效后,第三方应用将无法扫描微博列表,并出现“当前应用无权限”等错误提示。
  随后我们采访了安卓平台另一知名微博客户端Fuubo的开发者@RefacTech碎星。他已经在微博上表达了对此次API变更的担忧。在他看来,与新浪微博有官方合作关系的第三方应用,如Weico、Weige、ZAKER(该应用内置微博阅读功能,也可以视为第三方客户端),可能不会受到太大影响。,但其他一些自主开发的客户端也难逃他们的命运。不过,他也指出,即使新浪微博收紧API,第三方应用仍能以微博内容聚合阅读的形式继续存在,不会完全消亡。
  昨天下午(6月23日),新浪微博开放平台@微博开平台的验证账号给@RefacTech碎星发消息,称此次升级对第三方微博客户端没有影响。
  
  我们还联系了iOS平台微博客户端Weige的开发者,但截至发稿,他们并未对此发表评论。
  主要问题
  综合整个讨论过程和讨论内容,我们发现主要分歧点在于原创API更新日志中的“当前已授权应用”,由此提出以下问题:
  这是针对“已授权应用程序”还是针对所有第三方应用程序(无论它们是否经过用户重新授权)的更改?
  如果是第三方应用,会不会影响商业支付接口的第三方客户端?
  这种变化背后的考虑是什么?

使用新浪微博开放平台api同步微博内容至自己网站(这里有新鲜出炉的精品教程,程序狗速度看过来!)

网站优化优采云 发表了文章 • 0 个评论 • 59 次浏览 • 2022-01-04 08:07 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(这里有新鲜出炉的精品教程,程序狗速度看过来!)
  这里是新鲜出品的优质教程,看程序狗的速度!
  新浪微博 新浪微博是新浪网为提供微博服务而推出的一种推特网站。用户可以通过网页、WAP页面、手机客户端、手机短信、彩信发布消息或上传图片。新浪可以将微博理解为“微博”或“一句话博客”。
  本文讲解了新浪微博API开发介绍(PHP基础)的用户授权,有兴趣的同学可以参考。
  在开发和学习的过程中,感觉虽然不是太难,但还是有一些问题需要大家注意。今天在开发学习过程中,简单的用PHP进行了新浪微博整理讲解API开发的内容
  现在玩微博的人越来越多,微博上的第三方应用开​​发也越来越多。无意中开始接触新浪微博API开发,新浪微博API开发资源更多时候,新浪微博为开发者提供了一个平台。网站为: 收录新浪微博开发的综合信息,包括开发者的使用和介绍、各种语言的API功能介绍文档、SDK等多种资料。
  在开发和学习的过程中,感觉虽然不是太难,但还是有一些问题需要大家注意。今天在开发学习的过程中,简单的用PHP进行了新浪微博对API开发的内容进行整理和讲解,
  新浪微博API开发前的准备工作
  首先到新浪微博开放平台下载基于PHP的SDK开发包,下载地址为:
  下载完成后,放到自己的开发环境中解压。演示程序也包括在内。可以参考其示例程序进行编写。
  新浪微博API开发最重要的用户授权流程
  其实开发过程中的很多问题都集中在用户授权阶段。我开发的第三方应用使用的是OAuth授权。新浪微博开放平台的OAuth授权流程非常清晰完整。介绍,大家可以去看看,我会从实例开发的角度介绍和讲解。
  1.先获取未授权的Request Token
  $o = new WeiboOAuth(WB_AKEY, WB_SKEY);
  $keys = $o->getRequestToken();
  //echo($keys['oauth_token'].':'.$keys['oauth_token_secret']);
  我们需要在新浪微博开放平台注册一个账号,或者直接用我们的新浪微博账号登录,进入我的应用,然后按照提示创建我们自己的第三方应用。创建完成后,我们可以得到两个授权的App Key和App Secret值,这两个值是我们应用开发的关键。
  获得授权值后,我们可以通过上面的代码获取未授权的Request Token值,该值会保存在$key数组变量中。
  2.然后请求用户授权令牌
  $_SESSION['keys'] = $keys;
  aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false,'#39;);
  获取到未授权Request Token值后,我们可以使用上面的代码准备去新浪微博授权页面进行授权。 $aurl 是授权链接页面。拿到$aurl后,我们可以使用header()直接跳转到授权页面,然后用户输入新浪微博账号和密码进行授权。授权完成后会自动跳转回你最后一个参数设置的回调页面:这个链接可以设置为上一个页面,授权完成后会自动再跳转回来。
  需要注意的是,需要设置session key的值。下面获得的授权访问令牌中需要它。很多朋友可能会参考开放平台上的说明进行授权,但是发现总是报错。这通常是问题所在。您尚未设置会话的键值。当然,下面无法获取Access Token的值。这个一定要记住。
  3.用户最后授权的Access Token
  $o = new WeiboOAuth( WB_AKEY ,
  WB_SKEY,
  $_SESSION['keys']['oauth_token'] ,
  $_SESSION['keys']['oauth_token_secret'] );
  $last_key = $o->getAccessToken( $_REQUEST['oauth_verifier']) ;
  echo($last_key['oauth_token']);
  以上代码最终获得了用户授权的Access Token。有两个值,它们存储在 $last_key 数组变量中。我们也可以看到最后两个参数是我们之前设置的session值。至此,基本完成。这是一个完整的新浪微博用户授权流程。
  授权完成后工作
  授权完成后,我们就可以开始调用新浪微博提供的各种API函数接口进行实际应用开发了。这里我简单介绍一下获取最新微博记录的界面。其他类似。
  获取新浪微博最新信息的API接口函数为:public_timeline(),示例代码如下:
  //获取前20条最新更新的公众微博
  $c = new WeiboClient( WB_AKEY ,
  WB_SKEY,
  $oauth_token ,
  $oauth_token_secret );
  $msg = $c->public_timeline();
  if ($msg === false || $msg === null){
  echo "发生错误";
  返回假;
  }
  if (isset($msg['error_code']) && isset($msg['error'])){
  echo ('Error_code:'.$msg['error_code'].'; Error:'.$msg['error']);
  返回假;
  }
  print_r($msg);
  通常我们拿到用户授权的access token值后,会保存在我们的user表中,对应我们应用中的账号。之后,我们就不用每次都调用每个新浪微博API接口了。我一直都在考认证。
  上面的代码很简单,实例化WeiboClient对象,然后直接调用接口函数public_timeline获取返回的信息,如果没有报错。通常新浪微博api接口返回的数据格式一般是Json格式或者xml格式,而我们这里是用php开发的,那么使用Json格式数据有先天优势,如果返回Json格式数据,直接使用php即可。函数json_decode()可以转换成PHP常用的数组格式。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(这里有新鲜出炉的精品教程,程序狗速度看过来!)
  这里是新鲜出品的优质教程,看程序狗的速度!
  新浪微博 新浪微博是新浪网为提供微博服务而推出的一种推特网站。用户可以通过网页、WAP页面、手机客户端、手机短信、彩信发布消息或上传图片。新浪可以将微博理解为“微博”或“一句话博客”。
  本文讲解了新浪微博API开发介绍(PHP基础)的用户授权,有兴趣的同学可以参考。
  在开发和学习的过程中,感觉虽然不是太难,但还是有一些问题需要大家注意。今天在开发学习过程中,简单的用PHP进行了新浪微博整理讲解API开发的内容
  现在玩微博的人越来越多,微博上的第三方应用开​​发也越来越多。无意中开始接触新浪微博API开发,新浪微博API开发资源更多时候,新浪微博为开发者提供了一个平台。网站为: 收录新浪微博开发的综合信息,包括开发者的使用和介绍、各种语言的API功能介绍文档、SDK等多种资料。
  在开发和学习的过程中,感觉虽然不是太难,但还是有一些问题需要大家注意。今天在开发学习的过程中,简单的用PHP进行了新浪微博对API开发的内容进行整理和讲解,
  新浪微博API开发前的准备工作
  首先到新浪微博开放平台下载基于PHP的SDK开发包,下载地址为:
  下载完成后,放到自己的开发环境中解压。演示程序也包括在内。可以参考其示例程序进行编写。
  新浪微博API开发最重要的用户授权流程
  其实开发过程中的很多问题都集中在用户授权阶段。我开发的第三方应用使用的是OAuth授权。新浪微博开放平台的OAuth授权流程非常清晰完整。介绍,大家可以去看看,我会从实例开发的角度介绍和讲解。
  1.先获取未授权的Request Token
  $o = new WeiboOAuth(WB_AKEY, WB_SKEY);
  $keys = $o->getRequestToken();
  //echo($keys['oauth_token'].':'.$keys['oauth_token_secret']);
  我们需要在新浪微博开放平台注册一个账号,或者直接用我们的新浪微博账号登录,进入我的应用,然后按照提示创建我们自己的第三方应用。创建完成后,我们可以得到两个授权的App Key和App Secret值,这两个值是我们应用开发的关键。
  获得授权值后,我们可以通过上面的代码获取未授权的Request Token值,该值会保存在$key数组变量中。
  2.然后请求用户授权令牌
  $_SESSION['keys'] = $keys;
  aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false,'#39;);
  获取到未授权Request Token值后,我们可以使用上面的代码准备去新浪微博授权页面进行授权。 $aurl 是授权链接页面。拿到$aurl后,我们可以使用header()直接跳转到授权页面,然后用户输入新浪微博账号和密码进行授权。授权完成后会自动跳转回你最后一个参数设置的回调页面:这个链接可以设置为上一个页面,授权完成后会自动再跳转回来。
  需要注意的是,需要设置session key的值。下面获得的授权访问令牌中需要它。很多朋友可能会参考开放平台上的说明进行授权,但是发现总是报错。这通常是问题所在。您尚未设置会话的键值。当然,下面无法获取Access Token的值。这个一定要记住。
  3.用户最后授权的Access Token
  $o = new WeiboOAuth( WB_AKEY ,
  WB_SKEY,
  $_SESSION['keys']['oauth_token'] ,
  $_SESSION['keys']['oauth_token_secret'] );
  $last_key = $o->getAccessToken( $_REQUEST['oauth_verifier']) ;
  echo($last_key['oauth_token']);
  以上代码最终获得了用户授权的Access Token。有两个值,它们存储在 $last_key 数组变量中。我们也可以看到最后两个参数是我们之前设置的session值。至此,基本完成。这是一个完整的新浪微博用户授权流程。
  授权完成后工作
  授权完成后,我们就可以开始调用新浪微博提供的各种API函数接口进行实际应用开发了。这里我简单介绍一下获取最新微博记录的界面。其他类似。
  获取新浪微博最新信息的API接口函数为:public_timeline(),示例代码如下:
  //获取前20条最新更新的公众微博
  $c = new WeiboClient( WB_AKEY ,
  WB_SKEY,
  $oauth_token ,
  $oauth_token_secret );
  $msg = $c->public_timeline();
  if ($msg === false || $msg === null){
  echo "发生错误";
  返回假;
  }
  if (isset($msg['error_code']) && isset($msg['error'])){
  echo ('Error_code:'.$msg['error_code'].'; Error:'.$msg['error']);
  返回假;
  }
  print_r($msg);
  通常我们拿到用户授权的access token值后,会保存在我们的user表中,对应我们应用中的账号。之后,我们就不用每次都调用每个新浪微博API接口了。我一直都在考认证。
  上面的代码很简单,实例化WeiboClient对象,然后直接调用接口函数public_timeline获取返回的信息,如果没有报错。通常新浪微博api接口返回的数据格式一般是Json格式或者xml格式,而我们这里是用php开发的,那么使用Json格式数据有先天优势,如果返回Json格式数据,直接使用php即可。函数json_decode()可以转换成PHP常用的数组格式。

使用新浪微博开放平台api同步微博内容至自己网站(怎么使用新浪微博JavaSDK创建应用程序,主要用于应用程序密钥和秘密)

网站优化优采云 发表了文章 • 0 个评论 • 47 次浏览 • 2022-01-04 08:06 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(怎么使用新浪微博JavaSDK创建应用程序,主要用于应用程序密钥和秘密)
  但是,新浪提供的API比较繁琐,尤其是Java。三个版本的JavaAPI将你的蛋蛋打到极致:AndroidSDK真是逆天。由于新浪微博把V1改成了V2,就不能用了,所以只能用剩下的两个了。但是当你下载一个非常困难的版本时,你只能得到代码,而不能得到accesstoken。打开源码,点击里面的mainactivity,发现要切鸡了:别着急,新浪已经提供了把代码改成token的方法,不过不是在AndroidSDK中,而是在weibo4j中:。
  微博wp7平台SDK使用说明:如何使用新浪微博Java SDK
  创建应用程序,主要用于应用程序密钥和秘密密钥。请参考官方文档:2、下载新浪微薄的SDK,本文使用java。请先填写3、配置:client_。在配置中。属性
  为什么运行新浪微博微博SDKDemo报错
  谁知道呢。 eclipsesdk使用说明。
  有照片吗? mt4平台使用说明。
  如何使用新浪微博开放平台的JavaSDK?
  用鸡下蛋,提高声誉,最终获利。有钱了,去逛菜市场,然后就成为菜市场的主人了!你明白吗? .
  微博wp7平台SDK使用说明:如何使用腾讯微博开放平台的java SDK
  1、进入开放平台首页; mt5平台使用说明。
  2、 仔细阅读官方公开的 API 文档。
  听起来很糟糕,但你只能这样做。
  PS:特别提醒,一定要阅读官方文档,不要在网上搜索那些乱七八糟的帖子。他们中的许多人都是骗子。新浪微博开放平台的JavaSDK是否使用了在自动关注的基础上可以使用的quicksdk插件平台?
  这完全有可能
  如何使用新浪微博SDK
  1 首先下载新浪微博SDK包
  在新浪微博申请开发者账号,在开发过程中使用开发者的秘钥和秘钥SDK平台。
  我申请中的具体申请方法,过程很简单,不再赘述
  打开下载的sdk包demo工程,将demo工程中新浪微博SDK下的所有文件复制到自己的工程中
  很多朋友都犯了这个错误。根据官方文档,将整个src包加载到程序中是一个奇怪的错误
  这样的话,一些原来的程序会和文件名冲突,找不到具体的文件,很郁闷
  将demo中viewdidload函数的初始化数据复制到自己的程序中并加载。然后在函数中,加载自己的处理,如果想直接分享就调用
  -(void): (NS String*) text image: (UIImage*) 图像,发送信息,图像信息可以直接添加到图像数据中。 . 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(怎么使用新浪微博JavaSDK创建应用程序,主要用于应用程序密钥和秘密)
  但是,新浪提供的API比较繁琐,尤其是Java。三个版本的JavaAPI将你的蛋蛋打到极致:AndroidSDK真是逆天。由于新浪微博把V1改成了V2,就不能用了,所以只能用剩下的两个了。但是当你下载一个非常困难的版本时,你只能得到代码,而不能得到accesstoken。打开源码,点击里面的mainactivity,发现要切鸡了:别着急,新浪已经提供了把代码改成token的方法,不过不是在AndroidSDK中,而是在weibo4j中:。
  微博wp7平台SDK使用说明:如何使用新浪微博Java SDK
  创建应用程序,主要用于应用程序密钥和秘密密钥。请参考官方文档:2、下载新浪微薄的SDK,本文使用java。请先填写3、配置:client_。在配置中。属性
  为什么运行新浪微博微博SDKDemo报错
  谁知道呢。 eclipsesdk使用说明。
  有照片吗? mt4平台使用说明。
  如何使用新浪微博开放平台的JavaSDK?
  用鸡下蛋,提高声誉,最终获利。有钱了,去逛菜市场,然后就成为菜市场的主人了!你明白吗? .
  微博wp7平台SDK使用说明:如何使用腾讯微博开放平台的java SDK
  1、进入开放平台首页; mt5平台使用说明。
  2、 仔细阅读官方公开的 API 文档。
  听起来很糟糕,但你只能这样做。
  PS:特别提醒,一定要阅读官方文档,不要在网上搜索那些乱七八糟的帖子。他们中的许多人都是骗子。新浪微博开放平台的JavaSDK是否使用了在自动关注的基础上可以使用的quicksdk插件平台?
  这完全有可能
  如何使用新浪微博SDK
  1 首先下载新浪微博SDK包
  在新浪微博申请开发者账号,在开发过程中使用开发者的秘钥和秘钥SDK平台。
  我申请中的具体申请方法,过程很简单,不再赘述
  打开下载的sdk包demo工程,将demo工程中新浪微博SDK下的所有文件复制到自己的工程中
  很多朋友都犯了这个错误。根据官方文档,将整个src包加载到程序中是一个奇怪的错误
  这样的话,一些原来的程序会和文件名冲突,找不到具体的文件,很郁闷
  将demo中viewdidload函数的初始化数据复制到自己的程序中并加载。然后在函数中,加载自己的处理,如果想直接分享就调用
  -(void): (NS String*) text image: (UIImage*) 图像,发送信息,图像信息可以直接添加到图像数据中。 .

使用新浪微博开放平台api同步微博内容至自己网站(OAuth2.0协议授权流程查看/access_token获取)

网站优化优采云 发表了文章 • 0 个评论 • 69 次浏览 • 2022-01-04 00:01 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(OAuth2.0协议授权流程查看/access_token获取)
  一、OAuth2.0概览
  大多数API访问,如发布微博、获取私信、关注等,都需要用户身份。目前新浪微博开放平台用户身份认证包括OAuth2.0和Basic Auth(仅用于应用开发Debugging接口),新版接口也仅支持这两种方式。 OAuth2.0比1.0的整个授权验证过程更简单、更安全,也是未来最重要的用户认证和授权方式。 OAuth2.0协议授权流程见OAuth2.0授权流程,其中Client指第三方应用,Resource Owner指用户,Authorization Server是我们的授权服务器,Resource Server是API 服务器。
  参考链接:以及新浪微博开放平台和新浪微博CodeProject开源项目
  开发者可以先浏览OAuth2.0的接口文档,熟悉OAuth2接口和参数的含义,然后根据应用场景讲解如何使用OAuth2.0 .
  OAuth2 接口文档
  接口说明
  OAuth2/授权
  请求用户授权令牌
  OAuth2/access_token
  获取授权访问令牌
  OAuth2/get_token_info
  授权信息查询界面
  OAuth2/revokeoauth2
  授权恢复接口
  OAuth2/get_oauth2_token
  OAuth1.0的Access Token替换为OAuth2.0的Access Token
  二、OAuth2.0 新浪授权页面
  1、 首先需要获取appKey和appSecret。这种获取方式可以在新浪微博新手指南中一步步获取。这里的回调地址使用默认的:网站访问方式。以下是C#示例源代码(控制台应用程序):
  01.using System;
02.using System.Collections.Generic;
03.using System.Linq;
04.using System.Text;
05.using NetDimension.Weibo;
06.using System.Net;
07.
08.namespace SinaWeiboTestApp
09.{
10. class Program
11. {
12.
13. static void Main(string[] args)
14. {
15.
16. string appkey = "124543453288";
17. string appsecret = "3a456c5332fd2cb1178338fccb9fa51c";
18. //string callBack = "http://127.0.0.1:3170/WebSite2/Default.aspx";
19. string callBack = "https://api.weibo.com/oauth2/default.html";
20. var oauth = new NetDimension.Weibo.OAuth(appkey,appsecret,callBack);
21.
22. ////模拟登录
23. //string username = "xxxxxxxx@163.com";
24. //string password = "xxxxxxx";
25. //oauth.ClientLogin(username, password); //模拟登录下,没啥好说的,你也可以改成标准登录。
26.
27. //标准登录
28. var authUrl = oauth.GetAuthorizeURL();
29. //string redirectUrl;
30. //HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(authUrl);
31. //request.Referer = authUrl;
32. //request.AllowAutoRedirect = false;
33. //using (WebResponse response = request.GetResponse())
34. //{
35. // redirectUrl = response.Headers["Location"];
36. // redirectUrl = response.ResponseUri.AbsolutePath;
37. //}
38. System.Diagnostics.Process.Start(authUrl);
39. Console.WriteLine("填写浏览器地址中的Code参数:");
40. var code = Console.ReadLine();
41. var accessToken = oauth.GetAccessTokenByAuthorizationCode(code);
42. if (!string.IsNullOrEmpty(accessToken.Token))
43. {
44. var sina = new NetDimension.Weibo.Client(oauth);
45. var uid = sina.API.Dynamic.Account.GetUID(); //调用API中获取UID的方法
46. Console.WriteLine(uid);
47. }
48.
49. var Sina = new Client(oauth);
50. Console.WriteLine("开始发送异步请求...");
51.
52. //例子1:异步获取用户的ID
53. //demo的运行环境是.net 4.0,下面展示的这种方法在2.0及以上版本环境下有效,3.0以上可以用lambda表达式来简化delegate的蛋疼写法,请看下面的例子。
54. Sina.AsyncInvoke(
55. //第一个代理中编写调用API接口的相关逻辑
56. delegate()
57. {
58. Console.WriteLine("发送请求来获得用户ID...");
59. System.Threading.Thread.Sleep(8000); //等待8秒
60. return Sina.API.Entity.Account.GetUID();
61. },
62. //第二个代理为回调函数,异步完成后将自动调用这个函数来处理结果。
63. delegate(AsyncCallback callback)
64. {
65. if (callback.IsSuccess)
66. {
67. Console.WriteLine("获取用户ID成功,ID:{0}", callback.Data);
68. }
69. else
70. {
71. Console.WriteLine("获取用户ID失败,异常:{0}", callback.Error);
72. }
73. }
74. );
75.
76. //列子2:获取公共微博列表
77. //2.0以上用lambda来写,方便不是一点点
78. Sina.AsyncInvoke(() =>
79. {
80. //获取微博,接口调用,返回值是个NetDimension.Weibo.Entities.status.Collection,所以泛型T为NetDimension.Weibo.Entities.status.Collection
81. Console.WriteLine("发送请求来获得公共微博列表...");
82. return Sina.API.Entity.Statuses.PublicTimeline();
83. //return Sina.API.Entity.Statuses.RepostTimeline;
84. }, (callback) =>
85. {
86. if (callback.IsSuccess)
87. {
88. //异步完成后处理结果,result就是返回的结果,类型就是泛型所指定的NetDimension.Weibo.Entities.status.Collection
89. Console.WriteLine("获得公共微博列表成功,现在公共频道发微博的人都是他们:");
90. foreach (var status in callback.Data.Statuses)
91. {
92. if (status.User != null)
93. Console.WriteLine(status.User.ScreenName + " ");//打印公共微博发起人的姓名
94. }
95. Console.WriteLine();
96. }
97. else
98. {
99. Console.WriteLine("获取用户ID失败,异常:{0}", callback.Error);
100. }
101.
102. });
103.
104.
105. Console.WriteLine("已发送所有异步请求。等待异步执行完成...");
106.
107. Console.ReadKey(); //阻塞,等待异步调用执行完成
108.
109. }
110.
111. }
112.}
  MVC 中的代码:
  using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Myself.Models;
using Myself.Code;
using BLL;
using Lib;
using SpeexToWavToMp3;
using System.Web.Http.Filters;
using Models;
using Webdiyer.WebControls.Mvc;
using System.IO;
namespace Myself.Controllers
{
public class MySelfController : Controller
{
public ActionResult LoginSina()
{
var oauth = new NetDimension.Weibo.OAuth(appKey,appSecret,Url.Action("LoginSinaResult", "MySelf", null, "http"));
//第一步获取新浪授权页面的地址
var oauthUrl = oauth.GetAuthorizeURL();
return Redirect(oauthUrl);
}
public ActionResult LoginSinaResult(string code)
{
var oauth = new NetDimension.Weibo.OAuth(appKey, appSecret, Url.Action("LoginSinaResult", "MySelf", null, "http"));
var oauthToken = oauth.GetAccessTokenByAuthorizationCode(code);
var model = UserHelper.GetAuthorizeInfo(oauthToken.UID, 1);
if (model != null)
{
if (LoginHelper.UserLogin(model.UserID, 1, oauthToken.UID, Request.UserAgent, Request.UserHostAddress, "1", "web"))
{
return RedirectToAction("Index", "Home");
}
else
{
return Content("登录失败");
}
}
return Content("您尚未注册");
}
}
}
  要运行上述程序,需要替换Appkey和Appsecret。
  2、授权页面
  以下是提示微博登录的界面,登录后第三方网站授权访问您在新浪微博账号上的资源
  将提供。
  
  3、授权访问页面
  4、新浪官方网站提供API测试工具来测试客户端构造的参数是否正确
  
  5、Oauth2.0 操作流程图
  
  第一步:首先直接跳转到用户授权地址,即图标Request User Url,提示用户登录,授权相关资源获取唯一Auth code。这里注意代码只有10分钟的有效时间出于安全考虑,相比OAuth1.0,它节省了一步获取临时token,而且有效期也得到了控制,比1.0简单多了,安全多了@1.0 认证;第二步:获取代码授权后,这一步是请求访问令牌,使用图标请求访问url生成数据令牌;第三步:通过Access Token请求OpenID,openid是用户在本平台的唯一标识,通过图标Request info url请求,然后得到OpenID;第四步:通过第二步获取的数据Token、第三步获取的OpenID以及相关API,请求获取用户授权的资源信息 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(OAuth2.0协议授权流程查看/access_token获取)
  一、OAuth2.0概览
  大多数API访问,如发布微博、获取私信、关注等,都需要用户身份。目前新浪微博开放平台用户身份认证包括OAuth2.0和Basic Auth(仅用于应用开发Debugging接口),新版接口也仅支持这两种方式。 OAuth2.0比1.0的整个授权验证过程更简单、更安全,也是未来最重要的用户认证和授权方式。 OAuth2.0协议授权流程见OAuth2.0授权流程,其中Client指第三方应用,Resource Owner指用户,Authorization Server是我们的授权服务器,Resource Server是API 服务器。
  参考链接:以及新浪微博开放平台和新浪微博CodeProject开源项目
  开发者可以先浏览OAuth2.0的接口文档,熟悉OAuth2接口和参数的含义,然后根据应用场景讲解如何使用OAuth2.0 .
  OAuth2 接口文档
  接口说明
  OAuth2/授权
  请求用户授权令牌
  OAuth2/access_token
  获取授权访问令牌
  OAuth2/get_token_info
  授权信息查询界面
  OAuth2/revokeoauth2
  授权恢复接口
  OAuth2/get_oauth2_token
  OAuth1.0的Access Token替换为OAuth2.0的Access Token
  二、OAuth2.0 新浪授权页面
  1、 首先需要获取appKey和appSecret。这种获取方式可以在新浪微博新手指南中一步步获取。这里的回调地址使用默认的:网站访问方式。以下是C#示例源代码(控制台应用程序):
  01.using System;
02.using System.Collections.Generic;
03.using System.Linq;
04.using System.Text;
05.using NetDimension.Weibo;
06.using System.Net;
07.
08.namespace SinaWeiboTestApp
09.{
10. class Program
11. {
12.
13. static void Main(string[] args)
14. {
15.
16. string appkey = "124543453288";
17. string appsecret = "3a456c5332fd2cb1178338fccb9fa51c";
18. //string callBack = "http://127.0.0.1:3170/WebSite2/Default.aspx";
19. string callBack = "https://api.weibo.com/oauth2/default.html";
20. var oauth = new NetDimension.Weibo.OAuth(appkey,appsecret,callBack);
21.
22. ////模拟登录
23. //string username = "xxxxxxxx@163.com";
24. //string password = "xxxxxxx";
25. //oauth.ClientLogin(username, password); //模拟登录下,没啥好说的,你也可以改成标准登录。
26.
27. //标准登录
28. var authUrl = oauth.GetAuthorizeURL();
29. //string redirectUrl;
30. //HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(authUrl);
31. //request.Referer = authUrl;
32. //request.AllowAutoRedirect = false;
33. //using (WebResponse response = request.GetResponse())
34. //{
35. // redirectUrl = response.Headers["Location"];
36. // redirectUrl = response.ResponseUri.AbsolutePath;
37. //}
38. System.Diagnostics.Process.Start(authUrl);
39. Console.WriteLine("填写浏览器地址中的Code参数:");
40. var code = Console.ReadLine();
41. var accessToken = oauth.GetAccessTokenByAuthorizationCode(code);
42. if (!string.IsNullOrEmpty(accessToken.Token))
43. {
44. var sina = new NetDimension.Weibo.Client(oauth);
45. var uid = sina.API.Dynamic.Account.GetUID(); //调用API中获取UID的方法
46. Console.WriteLine(uid);
47. }
48.
49. var Sina = new Client(oauth);
50. Console.WriteLine("开始发送异步请求...");
51.
52. //例子1:异步获取用户的ID
53. //demo的运行环境是.net 4.0,下面展示的这种方法在2.0及以上版本环境下有效,3.0以上可以用lambda表达式来简化delegate的蛋疼写法,请看下面的例子。
54. Sina.AsyncInvoke(
55. //第一个代理中编写调用API接口的相关逻辑
56. delegate()
57. {
58. Console.WriteLine("发送请求来获得用户ID...");
59. System.Threading.Thread.Sleep(8000); //等待8秒
60. return Sina.API.Entity.Account.GetUID();
61. },
62. //第二个代理为回调函数,异步完成后将自动调用这个函数来处理结果。
63. delegate(AsyncCallback callback)
64. {
65. if (callback.IsSuccess)
66. {
67. Console.WriteLine("获取用户ID成功,ID:{0}", callback.Data);
68. }
69. else
70. {
71. Console.WriteLine("获取用户ID失败,异常:{0}", callback.Error);
72. }
73. }
74. );
75.
76. //列子2:获取公共微博列表
77. //2.0以上用lambda来写,方便不是一点点
78. Sina.AsyncInvoke(() =>
79. {
80. //获取微博,接口调用,返回值是个NetDimension.Weibo.Entities.status.Collection,所以泛型T为NetDimension.Weibo.Entities.status.Collection
81. Console.WriteLine("发送请求来获得公共微博列表...");
82. return Sina.API.Entity.Statuses.PublicTimeline();
83. //return Sina.API.Entity.Statuses.RepostTimeline;
84. }, (callback) =>
85. {
86. if (callback.IsSuccess)
87. {
88. //异步完成后处理结果,result就是返回的结果,类型就是泛型所指定的NetDimension.Weibo.Entities.status.Collection
89. Console.WriteLine("获得公共微博列表成功,现在公共频道发微博的人都是他们:");
90. foreach (var status in callback.Data.Statuses)
91. {
92. if (status.User != null)
93. Console.WriteLine(status.User.ScreenName + " ");//打印公共微博发起人的姓名
94. }
95. Console.WriteLine();
96. }
97. else
98. {
99. Console.WriteLine("获取用户ID失败,异常:{0}", callback.Error);
100. }
101.
102. });
103.
104.
105. Console.WriteLine("已发送所有异步请求。等待异步执行完成...");
106.
107. Console.ReadKey(); //阻塞,等待异步调用执行完成
108.
109. }
110.
111. }
112.}
  MVC 中的代码:
  using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Myself.Models;
using Myself.Code;
using BLL;
using Lib;
using SpeexToWavToMp3;
using System.Web.Http.Filters;
using Models;
using Webdiyer.WebControls.Mvc;
using System.IO;
namespace Myself.Controllers
{
public class MySelfController : Controller
{
public ActionResult LoginSina()
{
var oauth = new NetDimension.Weibo.OAuth(appKey,appSecret,Url.Action("LoginSinaResult", "MySelf", null, "http"));
//第一步获取新浪授权页面的地址
var oauthUrl = oauth.GetAuthorizeURL();
return Redirect(oauthUrl);
}
public ActionResult LoginSinaResult(string code)
{
var oauth = new NetDimension.Weibo.OAuth(appKey, appSecret, Url.Action("LoginSinaResult", "MySelf", null, "http"));
var oauthToken = oauth.GetAccessTokenByAuthorizationCode(code);
var model = UserHelper.GetAuthorizeInfo(oauthToken.UID, 1);
if (model != null)
{
if (LoginHelper.UserLogin(model.UserID, 1, oauthToken.UID, Request.UserAgent, Request.UserHostAddress, "1", "web"))
{
return RedirectToAction("Index", "Home");
}
else
{
return Content("登录失败");
}
}
return Content("您尚未注册");
}
}
}
  要运行上述程序,需要替换Appkey和Appsecret。
  2、授权页面
  以下是提示微博登录的界面,登录后第三方网站授权访问您在新浪微博账号上的资源
  将提供。
  
  3、授权访问页面
  4、新浪官方网站提供API测试工具来测试客户端构造的参数是否正确
  
  5、Oauth2.0 操作流程图
  
  第一步:首先直接跳转到用户授权地址,即图标Request User Url,提示用户登录,授权相关资源获取唯一Auth code。这里注意代码只有10分钟的有效时间出于安全考虑,相比OAuth1.0,它节省了一步获取临时token,而且有效期也得到了控制,比1.0简单多了,安全多了@1.0 认证;第二步:获取代码授权后,这一步是请求访问令牌,使用图标请求访问url生成数据令牌;第三步:通过Access Token请求OpenID,openid是用户在本平台的唯一标识,通过图标Request info url请求,然后得到OpenID;第四步:通过第二步获取的数据Token、第三步获取的OpenID以及相关API,请求获取用户授权的资源信息

使用新浪微博开放平台api同步微博内容至自己网站(新浪微博的系统分为三个层次,最下层是基础服务层)

网站优化优采云 发表了文章 • 0 个评论 • 66 次浏览 • 2022-01-03 16:15 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(新浪微博的系统分为三个层次,最下层是基础服务层)
  系统分为三个层次。底层是基础服务层,提供数据库、缓存、存储、搜索等数据服务等基础技术服务。这些服务支撑了新浪微博的海量数据和高并发访问,是整个系统的技术基础。
  中间层是平台服务和应用服务层。新浪微博的核心服务是微博、关系和用户。这些服务被划分为独立的服务模块,依靠调用和共享基础数据,构成了新浪微博的业务基础。
  顶层是 API 和业务层。各种客户端和第三方应用调用API并将其集成到新浪微博系统中,形成一个生态系统。
  新浪微博系统架构
  这些层次分明的业务模块和基础技术模块是分布式部署的。每个模块部署在一组独立的服务器集群上,通过远程调用进行依赖访问。新浪微博早期也采用了一种分布式集群部署方案,叫做MPSS(MultiPost Single Server,单服务器多端口)。在集群中的多台服务器上,每台服务器都部署了多个服务,每个服务使用不同的服务。港口为外界提供服务。这样,有限数量的服务器就可以部署更多的服务实例,提高服务的负载均衡和可用性。现在常见的网站 应用将物理机虚拟化为多个虚拟机。在虚拟机上部署应用的方法和新浪微博的MPSS方案一样,但是更简单,可以在不同的虚拟机上使用。相同的端口号。
  在新浪微博的早期架构中,微博发布采用的是同步推送模式。用户发布一条微博后,系统会立即将这条微博插入到数据库中所有粉丝的订阅列表中。当用户数量比较大时,会造成大量的数据库写操作,超过数据库负载,系统性能急剧下降,用户响应延迟增加。后来新浪微博改用异步推拉组合模式。用户发布微博后,系统将微博写入消息队列并立即返回。用户反应很快。消息队列消费者任务将微博推送到当前所有在线粉丝的订阅列表。非在线用户登录后根据关注列表拉取微博订阅列表。
  由于微博频繁刷新,新浪微博采用了多级缓存策略。热门微博和名人用户缓存在所有微博服务器上,在线用户的微博和最近的微博缓存在分布式缓存集群中。微博操作中最常见的“刷微博”操作几乎都是缓存访问操作,可以获得良好的系统性能。
  为了提高系统的整体可用性和性能,新浪微博激活了多个数据中心。这些数据中心不仅是区域用户访问中心,用户可以就近访问数据中心,加快访问速度,提升系统性能;它们也是数据冗余复制的灾难恢复中心。所有用户和微博数据通过远程消息系统是不同的。在数据中心之间进行同步以提高系统可用性。​​
  同时,新浪微博还开发了一系列自动化工具,包括自动化监控、自动化发布、自动化故障修复等,这些自动化工具还在不断的开发中,以提升运维水平,增加系统可用性。​​
  由于微博的开放性,新浪微博也遇到了一系列的安全挑战。垃圾邮件、僵尸粉和微博攻击从未停止。新浪微博除了使用通用的网站通用安全策略外,在开放平台上使用多级安全审计策略来保护系统和用户。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(新浪微博的系统分为三个层次,最下层是基础服务层)
  系统分为三个层次。底层是基础服务层,提供数据库、缓存、存储、搜索等数据服务等基础技术服务。这些服务支撑了新浪微博的海量数据和高并发访问,是整个系统的技术基础。
  中间层是平台服务和应用服务层。新浪微博的核心服务是微博、关系和用户。这些服务被划分为独立的服务模块,依靠调用和共享基础数据,构成了新浪微博的业务基础。
  顶层是 API 和业务层。各种客户端和第三方应用调用API并将其集成到新浪微博系统中,形成一个生态系统。
  新浪微博系统架构
  这些层次分明的业务模块和基础技术模块是分布式部署的。每个模块部署在一组独立的服务器集群上,通过远程调用进行依赖访问。新浪微博早期也采用了一种分布式集群部署方案,叫做MPSS(MultiPost Single Server,单服务器多端口)。在集群中的多台服务器上,每台服务器都部署了多个服务,每个服务使用不同的服务。港口为外界提供服务。这样,有限数量的服务器就可以部署更多的服务实例,提高服务的负载均衡和可用性。现在常见的网站 应用将物理机虚拟化为多个虚拟机。在虚拟机上部署应用的方法和新浪微博的MPSS方案一样,但是更简单,可以在不同的虚拟机上使用。相同的端口号。
  在新浪微博的早期架构中,微博发布采用的是同步推送模式。用户发布一条微博后,系统会立即将这条微博插入到数据库中所有粉丝的订阅列表中。当用户数量比较大时,会造成大量的数据库写操作,超过数据库负载,系统性能急剧下降,用户响应延迟增加。后来新浪微博改用异步推拉组合模式。用户发布微博后,系统将微博写入消息队列并立即返回。用户反应很快。消息队列消费者任务将微博推送到当前所有在线粉丝的订阅列表。非在线用户登录后根据关注列表拉取微博订阅列表。
  由于微博频繁刷新,新浪微博采用了多级缓存策略。热门微博和名人用户缓存在所有微博服务器上,在线用户的微博和最近的微博缓存在分布式缓存集群中。微博操作中最常见的“刷微博”操作几乎都是缓存访问操作,可以获得良好的系统性能。
  为了提高系统的整体可用性和性能,新浪微博激活了多个数据中心。这些数据中心不仅是区域用户访问中心,用户可以就近访问数据中心,加快访问速度,提升系统性能;它们也是数据冗余复制的灾难恢复中心。所有用户和微博数据通过远程消息系统是不同的。在数据中心之间进行同步以提高系统可用性。​​
  同时,新浪微博还开发了一系列自动化工具,包括自动化监控、自动化发布、自动化故障修复等,这些自动化工具还在不断的开发中,以提升运维水平,增加系统可用性。​​
  由于微博的开放性,新浪微博也遇到了一系列的安全挑战。垃圾邮件、僵尸粉和微博攻击从未停止。新浪微博除了使用通用的网站通用安全策略外,在开放平台上使用多级安全审计策略来保护系统和用户。

使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博同步内容至自己网站)

网站优化优采云 发表了文章 • 0 个评论 • 50 次浏览 • 2022-01-03 02:04 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博同步内容至自己网站)
  使用新浪微博开放平台api同步微博内容至自己网站,可以获取到该用户的所有相关微博,并给予相应的推荐和访问权限,可以满足开发者的个性化需求。
  回答这个问题之前,你必须要先知道,腾讯做微博是需要认证的,不然是无法被腾讯推送的,只能发给朋友看,朋友必须通过认证,以后才能推送给自己的朋友看。新浪,其实并不需要认证,只要有加v认证,就能被新浪推送给所有的用户。
  关注关键词就能推送相关微博:weibochannel在weibo里面看twitter,发现更多
  不需要腾讯认证,
  使用腾讯账号登录,然后申请开通并认证,或者使用新浪微博开放平台认证都可以。不过现在微博的开放平台认证都要付费的,大概要99元。
  有个客户端叫微博,登录直接分享给你的店铺你的微博都能被同步出来,亲测。
  腾讯认证的微博帐号才可以推送微博内容给任何微博客户端,那就需要你去认证新浪微博帐号喽,如果没有认证,只能发原微博,不可以推送。
  要认证
  最简单就是认证咯,认证花钱,新浪的认证是365元,认证多了就是2000多元,别的还有个什么认证我忘记了,如果不需要认证的话,用微博提供的推送接口也可以推送一个无关联的自己微博到微博客户端,但是只支持基于手机的这种, 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博同步内容至自己网站)
  使用新浪微博开放平台api同步微博内容至自己网站,可以获取到该用户的所有相关微博,并给予相应的推荐和访问权限,可以满足开发者的个性化需求。
  回答这个问题之前,你必须要先知道,腾讯做微博是需要认证的,不然是无法被腾讯推送的,只能发给朋友看,朋友必须通过认证,以后才能推送给自己的朋友看。新浪,其实并不需要认证,只要有加v认证,就能被新浪推送给所有的用户。
  关注关键词就能推送相关微博:weibochannel在weibo里面看twitter,发现更多
  不需要腾讯认证,
  使用腾讯账号登录,然后申请开通并认证,或者使用新浪微博开放平台认证都可以。不过现在微博的开放平台认证都要付费的,大概要99元。
  有个客户端叫微博,登录直接分享给你的店铺你的微博都能被同步出来,亲测。
  腾讯认证的微博帐号才可以推送微博内容给任何微博客户端,那就需要你去认证新浪微博帐号喽,如果没有认证,只能发原微博,不可以推送。
  要认证
  最简单就是认证咯,认证花钱,新浪的认证是365元,认证多了就是2000多元,别的还有个什么认证我忘记了,如果不需要认证的话,用微博提供的推送接口也可以推送一个无关联的自己微博到微博客户端,但是只支持基于手机的这种,

使用新浪微博开放平台api同步微博内容至自己网站(使用API提交数据(发布一条微博信息)(组图))

网站优化优采云 发表了文章 • 0 个评论 • 63 次浏览 • 2022-01-02 22:13 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(使用API提交数据(发布一条微博信息)(组图))
  我也是新手,第一次使用开放平台进行开发。一开始,我觉得无处可去。经过长时间的摸索,终于成功调用了API。现在把这个经验介绍给新手(高手不需要看,当然,如果你能提出一些意见和建议,我感激不尽),我想和你交流。
  这个例子描述了如何使用API​​提交数据(发布微博)和使用API​​获取数据(获取最新更新的20条公开微博消息),即“获取下游数据集(时间线)”官方API)“statuses/public_timeline下的“获取最新更新的公众微博消息接口”和“statuses/update发布微博信息”下的“微博访问接口”。
  首先,您必须有新浪微博账号,并申请一个应用秘钥(详见%E6%96%B0%E6%89%8B%E6%8C%87%E5%8D%9< @7),然后在VS中新建一个解决方案,在解决方案中添加一个类库和一个网站,并添加一个引用(网站引用类库)。
  
  因为发布微博是POST请求,获取数据是GET请求,并且是通过HTTP基本认证(Basic Authentication)授权,所以我把这些函数写在一个类中(在类库中),代码如下如下(这个类仅供参考,没有仔细考虑是否通用):
  
  发送请求和授权码
  然后在类库中创建两个实体类status和user,字段与官方API相同:
  
  状态实体类
  
  用户实体类
  好的,经过以上步骤,准备工作就完成了。现在我们可以调用 API。我们来看看发布一条微博消息。虽然在这个文章()中有介绍,但是为了本文的完整性,我只是粘贴了我的代码,并在类库中添加了一个MiniBlogVisit类:
  
  微博访问班
  您可以通过调用更新方法发布微博。但需要注意的是,这里的Content必须使用HttpUtility.UrlEncode进行编码,否则会出现乱码。
  最新更新看20条公众微博消息,这是官方API中的第一个接口。这是 XML 数据或 JSON 数据。您可以根据自己的喜好自由选择。我选择返回 XML。数据。我的方法是将返回的XML数据写入XML文件,然后解析XML文件,代码如下:
  
  获取数据代码
  好的,现在它被调用了。调用比较简单,是一个空的Default.aspx页面,后台代码如下:
  
  调用代码
  至此,所有代码都写完了,来看看完整的解决方案:
  
  运行后效果如下:
  
  第一次调用API,第一次写这么长的文章。欢迎大家! ! ! 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(使用API提交数据(发布一条微博信息)(组图))
  我也是新手,第一次使用开放平台进行开发。一开始,我觉得无处可去。经过长时间的摸索,终于成功调用了API。现在把这个经验介绍给新手(高手不需要看,当然,如果你能提出一些意见和建议,我感激不尽),我想和你交流。
  这个例子描述了如何使用API​​提交数据(发布微博)和使用API​​获取数据(获取最新更新的20条公开微博消息),即“获取下游数据集(时间线)”官方API)“statuses/public_timeline下的“获取最新更新的公众微博消息接口”和“statuses/update发布微博信息”下的“微博访问接口”。
  首先,您必须有新浪微博账号,并申请一个应用秘钥(详见%E6%96%B0%E6%89%8B%E6%8C%87%E5%8D%9< @7),然后在VS中新建一个解决方案,在解决方案中添加一个类库和一个网站,并添加一个引用(网站引用类库)。
  
  因为发布微博是POST请求,获取数据是GET请求,并且是通过HTTP基本认证(Basic Authentication)授权,所以我把这些函数写在一个类中(在类库中),代码如下如下(这个类仅供参考,没有仔细考虑是否通用):
  
  发送请求和授权码
  然后在类库中创建两个实体类status和user,字段与官方API相同:
  
  状态实体类
  
  用户实体类
  好的,经过以上步骤,准备工作就完成了。现在我们可以调用 API。我们来看看发布一条微博消息。虽然在这个文章()中有介绍,但是为了本文的完整性,我只是粘贴了我的代码,并在类库中添加了一个MiniBlogVisit类:
  
  微博访问班
  您可以通过调用更新方法发布微博。但需要注意的是,这里的Content必须使用HttpUtility.UrlEncode进行编码,否则会出现乱码。
  最新更新看20条公众微博消息,这是官方API中的第一个接口。这是 XML 数据或 JSON 数据。您可以根据自己的喜好自由选择。我选择返回 XML。数据。我的方法是将返回的XML数据写入XML文件,然后解析XML文件,代码如下:
  
  获取数据代码
  好的,现在它被调用了。调用比较简单,是一个空的Default.aspx页面,后台代码如下:
  
  调用代码
  至此,所有代码都写完了,来看看完整的解决方案:
  
  运行后效果如下:
  
  第一次调用API,第一次写这么长的文章。欢迎大家! ! !

使用新浪微博开放平台api同步微博内容至自己网站(基于微博的移动电子商务系统Android客户端软件(SoftwareDevelopmentKit)为第三方微博应用)

网站优化优采云 发表了文章 • 0 个评论 • 54 次浏览 • 2022-01-02 22:13 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(基于微博的移动电子商务系统Android客户端软件(SoftwareDevelopmentKit)为第三方微博应用)
  Android 是基于 Linux 内核的操作系统。以其独特的开放性,广泛应用于智能手机等智能终端,并迅速发展成为市场占有率最大的手机操作系统。电子商务近年来发展迅速,通过互联网进行交易已成为一种趋势。作为智能移动终端与电子商务的结合,移动电子商务具有巨大的发展潜力。微博是微博的简称,是一个基于用户关系的信息共享、传播和获取平台。用户以文本形式更新信息,实现即时分享。微博的开放性和即时性使其成为发展最快的互联网业务。因此,依靠微博平台推动移动电子商务的发展具有很大的市场价值,但目前市场上还没有基于微博平台的移动电子商务软件。在此背景下,基于微博的移动电子商务系统Android客户端软件应运而生。由于新浪微博是中国用户最多的微博平台,本系统以新浪微博为开发平台。新浪微博Android平台SDK(SoftwareDevelopmentKit)为第三方微博应用提供简单易用的微博API调用服务,让第三方客户端无需了解复杂的验证、API(应用程序接口)调用流程。并且可以实现分享到微博的功能,可以将文字或多媒体信息分享到内置的分享页面,并发送到微博。
  这个SDK封装了对HTTP请求和Json信息的分析。我们只需要实现页面相关功能的开发,大大减轻了程序员的开发压力。本文所讨论的系统开发的核心内容是基于Android平台,结合新浪微博API实现基于微博的移动电子商务系统的Android客户端软件。本文介绍了移动电子商务、Android开发平台和微博开发平台相关技术,分析了电子商务、Android手机平台和微博系统目前国内外的应用,并设计了一个基于新浪的Android移动电子商务系统。微博客户端软件实现登录注册模块、业务信息模块、微博编辑模块、采集夹模块、个人信息模块、二维码模块、天气查询模块。最后,该系统使用户不必再花时间在线搜索产品。只要你有一部安卓手机,用户就可以随时随地浏览商家促销信息。它不仅解放了时间和空间的限制,而且让用户更有效地利用时间。他们可以利用在公交车上、地铁上的时间,以及许多其他的等待时间来获取商业信息。完成了基于微博的电子商务系统Android客户端软件的基本功能开发。现在软件可以正常运行了。大大节省了人们挑选商品的时间,加快了商品流通,方便卖家推广商品,买家获得更多优惠折扣,及时与微博好友分享商家推广信息。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(基于微博的移动电子商务系统Android客户端软件(SoftwareDevelopmentKit)为第三方微博应用)
  Android 是基于 Linux 内核的操作系统。以其独特的开放性,广泛应用于智能手机等智能终端,并迅速发展成为市场占有率最大的手机操作系统。电子商务近年来发展迅速,通过互联网进行交易已成为一种趋势。作为智能移动终端与电子商务的结合,移动电子商务具有巨大的发展潜力。微博是微博的简称,是一个基于用户关系的信息共享、传播和获取平台。用户以文本形式更新信息,实现即时分享。微博的开放性和即时性使其成为发展最快的互联网业务。因此,依靠微博平台推动移动电子商务的发展具有很大的市场价值,但目前市场上还没有基于微博平台的移动电子商务软件。在此背景下,基于微博的移动电子商务系统Android客户端软件应运而生。由于新浪微博是中国用户最多的微博平台,本系统以新浪微博为开发平台。新浪微博Android平台SDK(SoftwareDevelopmentKit)为第三方微博应用提供简单易用的微博API调用服务,让第三方客户端无需了解复杂的验证、API(应用程序接口)调用流程。并且可以实现分享到微博的功能,可以将文字或多媒体信息分享到内置的分享页面,并发送到微博。
  这个SDK封装了对HTTP请求和Json信息的分析。我们只需要实现页面相关功能的开发,大大减轻了程序员的开发压力。本文所讨论的系统开发的核心内容是基于Android平台,结合新浪微博API实现基于微博的移动电子商务系统的Android客户端软件。本文介绍了移动电子商务、Android开发平台和微博开发平台相关技术,分析了电子商务、Android手机平台和微博系统目前国内外的应用,并设计了一个基于新浪的Android移动电子商务系统。微博客户端软件实现登录注册模块、业务信息模块、微博编辑模块、采集夹模块、个人信息模块、二维码模块、天气查询模块。最后,该系统使用户不必再花时间在线搜索产品。只要你有一部安卓手机,用户就可以随时随地浏览商家促销信息。它不仅解放了时间和空间的限制,而且让用户更有效地利用时间。他们可以利用在公交车上、地铁上的时间,以及许多其他的等待时间来获取商业信息。完成了基于微博的电子商务系统Android客户端软件的基本功能开发。现在软件可以正常运行了。大大节省了人们挑选商品的时间,加快了商品流通,方便卖家推广商品,买家获得更多优惠折扣,及时与微博好友分享商家推广信息。

使用新浪微博开放平台api同步微博内容至自己网站(这是移动端微博信息_selenium_sina__)

网站优化优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2022-01-02 12:05 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(这是移动端微博信息_selenium_sina__)
  这是一个新浪微博爬虫,使用python+selenium实现。免费资源,希望对你有帮助,虽然是傻瓜式爬虫,但至少能跑。同时在rar中收录了源代码和爬取示例。参考我的文章:【python爬虫】Selenium爬取新浪微博内容和用户信息【python爬虫】Selenium爬取新浪微博客户端用户信息、热点话题和评论(上) 主要爬取内容包括:新浪微博手机用户信息和微博信息。用户信息:包括用户ID、用户名、微博数、粉丝数、关注数等。 微博信息:包括转发或原创、点赞、转发、评论、发布时间、微博内容等。安装过程:1.先安装Python环境,作者是Python2.7.82.然后安装PIP或者easy_install3.通过安装selenium命令pip install selenium,是一个自动测试爬取的工具4.然后在代码中修改用户名和密码,填写自己的用户名和密码5.运行程序,并自动调用火狐浏览器登录微博。注:手机信息更精致简洁,动态加载没有限制,只是显示微博或粉丝id等20个页面,这是它的缺点;虽然客户端可能有动态加载,比如评论和微博,但它的信息更完整。 [源码] 爬取手机微博信息spider_selenium_sina_content.py 输入:明星用户id列表,使用URL+用户id访问(这些id可以从用户的关注列表中获取) SinaWeibo_List_best_1.txt 输出:微博信息和基本信息用户信息 SinaWeibo_Info_best_1.txtMegry_Result_Best.py 用户使用该文件整理某一天的用户微博信息,例如2016年4月23日【源代码】爬取客户端微博信息抓取客户端信息,但是评论是动态的已加载,还在研究中 weibo_spider2.pyBy:Eastmount 2016-04-24 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(这是移动端微博信息_selenium_sina__)
  这是一个新浪微博爬虫,使用python+selenium实现。免费资源,希望对你有帮助,虽然是傻瓜式爬虫,但至少能跑。同时在rar中收录了源代码和爬取示例。参考我的文章:【python爬虫】Selenium爬取新浪微博内容和用户信息【python爬虫】Selenium爬取新浪微博客户端用户信息、热点话题和评论(上) 主要爬取内容包括:新浪微博手机用户信息和微博信息。用户信息:包括用户ID、用户名、微博数、粉丝数、关注数等。 微博信息:包括转发或原创、点赞、转发、评论、发布时间、微博内容等。安装过程:1.先安装Python环境,作者是Python2.7.82.然后安装PIP或者easy_install3.通过安装selenium命令pip install selenium,是一个自动测试爬取的工具4.然后在代码中修改用户名和密码,填写自己的用户名和密码5.运行程序,并自动调用火狐浏览器登录微博。注:手机信息更精致简洁,动态加载没有限制,只是显示微博或粉丝id等20个页面,这是它的缺点;虽然客户端可能有动态加载,比如评论和微博,但它的信息更完整。 [源码] 爬取手机微博信息spider_selenium_sina_content.py 输入:明星用户id列表,使用URL+用户id访问(这些id可以从用户的关注列表中获取) SinaWeibo_List_best_1.txt 输出:微博信息和基本信息用户信息 SinaWeibo_Info_best_1.txtMegry_Result_Best.py 用户使用该文件整理某一天的用户微博信息,例如2016年4月23日【源代码】爬取客户端微博信息抓取客户端信息,但是评论是动态的已加载,还在研究中 weibo_spider2.pyBy:Eastmount 2016-04-24

使用新浪微博开放平台api同步微博内容至自己网站(1.:OAUth认证方式比于BaseOAuthOAuth的认证资料比较少 )

网站优化优采云 发表了文章 • 0 个评论 • 48 次浏览 • 2022-01-01 20:20 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(1.:OAUth认证方式比于BaseOAuthOAuth的认证资料比较少
)
  由于 Twitter 近期只支持 OAuth 认证方式,各大应用纷纷转向 OAuth 认证方式,新浪微博开放平台也将在近期停止 Base OAuth 认证方式。
  为了继续使用新浪微博的开放平台,我开始研究OAuth认证方式。经过一段时间的实践,对新浪微博开放平台的OAuth认证方式有了一定的体会。鉴于网上关于这个平台的OAuth相关资料比较少,在此分享一下过程中积累的经验。希望对一些想使用OAuth认证的人调用新浪微博界面有所帮助~~
  1.关于 OAuth:
  OAUth认证方式相比Base OAuth认证方式最大的特点是应用端不需要保存用户的账号和密码,只需要用户授权的Key和Secret组合即可平台上的接口资源进行访问,在传输过程中,也可以通过截包分析,防止恶意人员获取用户的账号和密码。 (有一种说法,推特之所以完全切换到OAuth认证,是为了防止GFW通过截包的方式获取一些相关名人的账号和密码)。具体定义可以阅读OAuth规范定义:OAuth规范。
  2.新浪微博开放平台:
  新浪微博开放平台的基本界面、参数、返回格式参考推特模型。当然,国内其他一些开放平台也大量借鉴了推特的模式,所以基本一致。要使用新浪微博的开放平台,当然首先要到其网站注册:新浪微博API。
  注册后会得到Consumer Key和Consumer Secret两个关键字段。保存它们。
  新浪微博的开发平台有足够的文档,可以快速调用这些接口。除了一些困难的接口,我们将在下面讨论。
  3.在新浪使用 OAuth:
  要使用 OAuth,用户必须先获得授权。一般来说,授权流程如下:
  (1)应用向新浪开发平台发送请求,获取未授权的Request Token和Request Secret。此时Request Secret暂时不用,请妥善保管。
  (2)以上一步获取的Request Token为参数,引导用户浏览器跳转到新浪微博授权页面,用户进入该页面登录新浪微博进行授权Token。如果在() 作为参数,传递给新浪微博服务器,服务器会返回真实的Access Token和Access Secret,新浪微博也会返回用户在新浪微博的userid,有了用户的Access Token和Access Secret,你可以自由方便地调用新浪微博的开放界面。
  每次调用都必须收录 OAuth 身份验证信息。作为OAuth认证信息,添加到请求包中基本上有两种方式:
  (1)最推荐的方法是使用HTTP Authorization Header。这个header的定义在RFC2617中定义。
  例如:
      Authorization: OAuth realm="http://photos.example.net/",
                oauth_consumer_key="dpf43f3p2l4k3l03",
                oauth_token="nnch734d00sl2jdk",
                oauth_signature_method="HMAC-SHA1",
                oauth_signature="tR3%2BTy81lMeYAr%2FFid0kMTYa%2FWM%3D",
                oauth_timestamp="1191242096", oauth_nonce="kllo9940pd9333jh",
                oauth_version="1.0"
       (2)或者可以采用,参数传递的方式,将OAuth的参数与正常的参数一样放置与Get的URL中,或者POST的包体内容中,都是可以的,
  但遇到一些特殊情况就较难解决这个问题了。
  4.OAuth认证参数解析:
   在上面可以看到,一个正常的OAuth认证中,包含以下若干参数:<br />
    (1)oauth_consumer_key: 即是注册时,新浪给你的conusmer key,明文传输<br />
    (2)oauth_token: 即是用户完成OAuth认证后的Access Token,在进行OAuth认证第三步的时候,为Request Token,
   第一步时不需要这个参数
    (3)oauth_signature_method:加密的方法,提供HMAC-SHA1, RSA-SHA1, PLAINTEXT 几种方法<br />
    (4)oauth_signature: 对于全部参数进行加密后的字符串,包括consumer secret和access secret<br />
    (5)oauth_timestamp:发请求的时间戳<br />
    (6)oauth_version:可选的参数,基本上置为1.0,否则会出错的。<br />
    (7)oauth_nonce:随机的值,防止重复调用<br />
  5.上传图片OAuth之痛:
    使用上面的方法,基本上可以解决所有的接口调用。但遇到难搞的上传图片这样的请求时,就需要一些方法取巧了。<br />
    新浪微博的开放平台,要求上传图片时必须使用multipart/form-data的方式进行上传,但OAuth协议在定义时,描述Content-Type为
  application/x-www-form-urlencoded, 而并没有提及如何在multipart/form-data使用。<br />
    在网上基本上找不到任何一个地方有提及在新浪微博的开放平台上以OAuth的方式上传图片,经过一个晚上的尝试与借鉴Twitter上的做法后,
  终于发现了解决方法。
    基本上,在协议上没有说明的内容,就必须由民间采用较为直观的方式进行解决。要在新浪微博的接口中进行图片上传,必须使用multipart/
  form-data作为Content-Type,而OAuth的认证参数不能放入form-data的参数中,必须使用Authorization Header来认证,而这时,必须将除了文
  件(file)的参数,就是将status这个参数加入到oauth的BaseString中进行加密,再将status作为fom-data的一个value中,这样就能够
  正常的上传图片并发表微博了。通过这个简单而麻烦的方法,终于能够安全地上传图片到新浪微博。
  6.最后
    至此,本人已成功调用新浪微博绝大多数的接口,并开始将应用覆盖搜狐微博,网易微博等开放平台,希望可以通过这篇文章,记录下一些经
  验与教训。<br />
  <br />
  7.参考资料
  [RFC5849]E。哈默拉哈夫,埃德。 “OAuth 1.0 协议”,RFC5849
  [RFC1867] E. Nebel,L. Masinter,“HTML 中基于表单的文件上传”,RFC1867
  [RFC2616] Fielding,R.,Gettys,J,e "超文本传输​​协议 - HTTP/1.1", RFC2616
  [RFC2617] Franks,J.“HTTP 身份验证:基本和摘要式访问身份验证”,RFC2617
  新浪微博开放平台:
        查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(1.:OAUth认证方式比于BaseOAuthOAuth的认证资料比较少
)
  由于 Twitter 近期只支持 OAuth 认证方式,各大应用纷纷转向 OAuth 认证方式,新浪微博开放平台也将在近期停止 Base OAuth 认证方式。
  为了继续使用新浪微博的开放平台,我开始研究OAuth认证方式。经过一段时间的实践,对新浪微博开放平台的OAuth认证方式有了一定的体会。鉴于网上关于这个平台的OAuth相关资料比较少,在此分享一下过程中积累的经验。希望对一些想使用OAuth认证的人调用新浪微博界面有所帮助~~
  1.关于 OAuth:
  OAUth认证方式相比Base OAuth认证方式最大的特点是应用端不需要保存用户的账号和密码,只需要用户授权的Key和Secret组合即可平台上的接口资源进行访问,在传输过程中,也可以通过截包分析,防止恶意人员获取用户的账号和密码。 (有一种说法,推特之所以完全切换到OAuth认证,是为了防止GFW通过截包的方式获取一些相关名人的账号和密码)。具体定义可以阅读OAuth规范定义:OAuth规范。
  2.新浪微博开放平台:
  新浪微博开放平台的基本界面、参数、返回格式参考推特模型。当然,国内其他一些开放平台也大量借鉴了推特的模式,所以基本一致。要使用新浪微博的开放平台,当然首先要到其网站注册:新浪微博API。
  注册后会得到Consumer Key和Consumer Secret两个关键字段。保存它们。
  新浪微博的开发平台有足够的文档,可以快速调用这些接口。除了一些困难的接口,我们将在下面讨论。
  3.在新浪使用 OAuth:
  要使用 OAuth,用户必须先获得授权。一般来说,授权流程如下:
  (1)应用向新浪开发平台发送请求,获取未授权的Request Token和Request Secret。此时Request Secret暂时不用,请妥善保管。
  (2)以上一步获取的Request Token为参数,引导用户浏览器跳转到新浪微博授权页面,用户进入该页面登录新浪微博进行授权Token。如果在() 作为参数,传递给新浪微博服务器,服务器会返回真实的Access Token和Access Secret,新浪微博也会返回用户在新浪微博的userid,有了用户的Access Token和Access Secret,你可以自由方便地调用新浪微博的开放界面。
  每次调用都必须收录 OAuth 身份验证信息。作为OAuth认证信息,添加到请求包中基本上有两种方式:
  (1)最推荐的方法是使用HTTP Authorization Header。这个header的定义在RFC2617中定义。
  例如:
      Authorization: OAuth realm="http://photos.example.net/",
                oauth_consumer_key="dpf43f3p2l4k3l03",
                oauth_token="nnch734d00sl2jdk",
                oauth_signature_method="HMAC-SHA1",
                oauth_signature="tR3%2BTy81lMeYAr%2FFid0kMTYa%2FWM%3D",
                oauth_timestamp="1191242096", oauth_nonce="kllo9940pd9333jh",
                oauth_version="1.0"
       (2)或者可以采用,参数传递的方式,将OAuth的参数与正常的参数一样放置与Get的URL中,或者POST的包体内容中,都是可以的,
  但遇到一些特殊情况就较难解决这个问题了。
  4.OAuth认证参数解析:
   在上面可以看到,一个正常的OAuth认证中,包含以下若干参数:<br />
    (1)oauth_consumer_key: 即是注册时,新浪给你的conusmer key,明文传输<br />
    (2)oauth_token: 即是用户完成OAuth认证后的Access Token,在进行OAuth认证第三步的时候,为Request Token,
   第一步时不需要这个参数
    (3)oauth_signature_method:加密的方法,提供HMAC-SHA1, RSA-SHA1, PLAINTEXT 几种方法<br />
    (4)oauth_signature: 对于全部参数进行加密后的字符串,包括consumer secret和access secret<br />
    (5)oauth_timestamp:发请求的时间戳<br />
    (6)oauth_version:可选的参数,基本上置为1.0,否则会出错的。<br />
    (7)oauth_nonce:随机的值,防止重复调用<br />
  5.上传图片OAuth之痛:
    使用上面的方法,基本上可以解决所有的接口调用。但遇到难搞的上传图片这样的请求时,就需要一些方法取巧了。<br />
    新浪微博的开放平台,要求上传图片时必须使用multipart/form-data的方式进行上传,但OAuth协议在定义时,描述Content-Type为
  application/x-www-form-urlencoded, 而并没有提及如何在multipart/form-data使用。<br />
    在网上基本上找不到任何一个地方有提及在新浪微博的开放平台上以OAuth的方式上传图片,经过一个晚上的尝试与借鉴Twitter上的做法后,
  终于发现了解决方法。
    基本上,在协议上没有说明的内容,就必须由民间采用较为直观的方式进行解决。要在新浪微博的接口中进行图片上传,必须使用multipart/
  form-data作为Content-Type,而OAuth的认证参数不能放入form-data的参数中,必须使用Authorization Header来认证,而这时,必须将除了文
  件(file)的参数,就是将status这个参数加入到oauth的BaseString中进行加密,再将status作为fom-data的一个value中,这样就能够
  正常的上传图片并发表微博了。通过这个简单而麻烦的方法,终于能够安全地上传图片到新浪微博。
  6.最后
    至此,本人已成功调用新浪微博绝大多数的接口,并开始将应用覆盖搜狐微博,网易微博等开放平台,希望可以通过这篇文章,记录下一些经
  验与教训。<br />
  <br />
  7.参考资料
  [RFC5849]E。哈默拉哈夫,埃德。 “OAuth 1.0 协议”,RFC5849
  [RFC1867] E. Nebel,L. Masinter,“HTML 中基于表单的文件上传”,RFC1867
  [RFC2616] Fielding,R.,Gettys,J,e "超文本传输​​协议 - HTTP/1.1", RFC2616
  [RFC2617] Franks,J.“HTTP 身份验证:基本和摘要式访问身份验证”,RFC2617
  新浪微博开放平台:
       

使用新浪微博开放平台api同步微博内容至自己网站(调用新浪微博开放平台API开发自己的微博应用(App))

网站优化优采云 发表了文章 • 0 个评论 • 71 次浏览 • 2022-01-12 22:14 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(调用新浪微博开放平台API开发自己的微博应用(App))
  新浪微博开放平台虽然提供多种语言的开发SDK下载,但也有一些基本接口调用的demo和接口说明文档。但是经过几天的耐心尝试,感觉新浪微博开放平台上的入门指南和下载的Java开发包weibo4j包中的demo用法注释有些不一致。再加上自身领悟能力有限,遇到了不少难题。幸运的是,我没有放弃尝试理解它。废话不多说,这是我的学习过程。
  如果你想通过调用新浪微博开放平台API来开发自己的微博应用,第一步就是要有一个新浪微博账号和一个CSDN账号,因为我们需要同时用这两个账号创建一个微博应用,从而获得App key和CSDN账号。密钥 。App key 和 Secret key 有什么用?
  其实我只是看了新浪微博开放平台上的一系列说明,对App key和Secret key的使用并不是很了解。因为更重要的一点是要了解OAuth认证授权的整个过程,以及几个Token和4个URL在整个OAuth认证授权过程中的作用。
  当我第一次遇到完全没有概念的 OAuth 时,我认为它是不可能学习的。幸运的是,我找到了下面的文章,对理解OAuth很有帮助。链接如下:
  OAuth 中共有三个参与者,即用户、服务提供者和消费者。假设我想开发一个基于新浪微博开放平台的应用程序(App),供其他新浪微博用户使用。它们的对应关系如下:
  实际上,我们的App相当于User和Provider(新浪微博平台)的第三方应用。作为第三方App,要想访问用户存储在新浪微博平台的资源,必须经过一系列的认证和授权后才能工作。
  下面是根据我对整个OAuth认证授权过程的理解绘制的图(可以看略过,对以下一些概念有一定了解后再看这个流程图):
  结合上面的流程图,下面是我对这些术语的理解和对各个流程的描述:
  Consumer key和Consumer Secret:在新浪微博开放平台上分别称为App key和Secret key。Consumer 向 Provider 申请能够调用其开放的 API。申请通过后,Provider将其分配给满足其要求的Consumer,以唯一标识满足Provider要求的Consumer。
  对应上图中的流1和2。
  Request Token,Request Secret:当User访问Consumer,想要获取其特殊服务时,该服务由Consumer整合存储在Provider中的User自己的资源后返回。此时,Consumer 向 Provider 请求获取一个 Requst Token,用于唯一标识 Consumer 和 User 之间的具体关联。
  对应上图中的流程3、4、5。
  在流程6中,Consumer必须将User引导到Provider提供的OAuth认证授权页面。实际上,浏览器会重定向到附加了 Request Token 和 Request Secret 参数的 authenticationURL。URL 由 Provider 提供。
  接下来在流程7和流程8中,User授权Consumer(一般是输入账号和密码登录),然后Provider会重定向到流程1中Consumer提供的Callback_URL,并附加OAuth Token和OAuth URL 参数的验证程序。.
  流程9,Consumer通过之前已经从Provider获取的Request Token,再次请求Provider获取Access Token。
  Access Token和Access Secret:如果Provider在流程10中返回了一个未经User授权的Access Token,用于唯一标识特定的Consumer可以访问某个User存储在Provider中的资源和信息。然后Consumer就可以开始使用获取到的Access Token和Access Secret来访问对应User存储在Provider中的资源。
  在流程11中对用户信息进行整合和操作后,可以将具体的服务结果返回给用户。
  通过以上对OAuth流程的了解,我们知道User并没有将登录Provider所需的账号、密码等泄露给第三方Consumer。同时,用户可以使用消费者的特殊服务。多么巧妙又安全的操作过程!
  另外,上图中,Consumer向Provider发出了三个不同的请求,实际上就是Provider提供了三个不同功能的URL供Consumer访问。新浪微博开放平台三个网址截图如下:
  使用OAuth在新浪微博开放平台验证和发布微博
  使用新浪微博开放平台的API,首先要获取新浪分配的App key和App Secret。以下是我创建应用后新浪分配的App key和App Secret(这个要保密)。
  然后下载微博SDK,我用的是Java的weibo4j。
  将SDK包中Weibo.java类的App Key和App Secret修改为刚刚获取的App Key和App Secret,如下所示:
  完成这些后,就可以根据提供的Demo开始编写代码了。如下:
  WebOAuth.java用于初始化Weibo.java类所需的App Key和App Secret,并提供getRequestToken()和gettAccessToken()方法获取Request Token和Access Token。所需的参数显示在代码中。此外,还提供了一种发布文本微博的方法update()。
   package weibo4j.examples; import weibo4j.Status; import weibo4j.Weibo; import weibo4j.WeiboException; import weibo4j.http.AccessToken; import weibo4j.http.RequestToken; import java.io.UnsupportedEncodingException; // Web 方式认证 public class WebOAuth { private Weibo weibo; public WebOAuth(){ // 准备好Consumer Key、Consumer Secret // 对应于新浪微博应用就是申请到的 App key 和 Secret key System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY); System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET); weibo = new Weibo(); } // 根据传入的 callback_url 获取 request token public RequestToken getRequestToken(String backUrl) { try { // 指定 callback_url 并获得 request token RequestToken requestToken = weibo.getOAuthRequestToken(backUrl); System.out.println("Request token: " + requestToken.getToken()); System.out.println("Request token secret: " + requestToken.getTokenSecret()); return requestToken; } catch (Exception e) { System.out.println("获取Request token发生异常!"); e.printStackTrace(); return null; } } // 根据传入的 request token 和 verifier 获取 access token public AccessToken gettAccessToken(RequestToken requestToken, String verifier) { try { AccessToken accessToken = weibo.getOAuthAccessToken(requestToken .getToken(), requestToken.getTokenSecret(), verifier); System.out.println("Access token: " + accessToken.getToken()); System.out.println("Access token secret: " + accessToken.getTokenSecret()); return accessToken; } catch (Exception e) { System.out.println("获取Access token发生异常!"); e.printStackTrace(); return null; } } // 根据传入的 Access Token 和内容发表微博 public void update(AccessToken access, String content) { try { weibo.setToken(access.getToken(), access.getTokenSecret()); content = new String(content.getBytes("GBK"), "UTF-8"); Status status = weibo.updateStatus(content); System.out.println("成功发表微博:" + status.getText() + "."); } catch (UnsupportedEncodingException e) { System.out.println("微博内容转编码发生异常!"); e.printStackTrace(); } catch (WeiboException e) { System.out.println(来源gaodai.ma#com搞#代!码网"发表微博发生异常!"); e.printStackTrace(); } } } request.jsp,用于提供 callback_url(这里我们自定义为下文中的callback.jsp),当获取得到RequestToken之后,保存该RequestToken到Session中,并将页面重定向到callback.jsp进行验证、授权。 请点击进行Web方式的OAuth认证!
  callback.jsp,在上一步重定向后,会在callback_url后面附加oauth_verifier参数。这时候我们根据Session中保存的RequestToken和获取到的oauth_verifier参数申请AccessToken。获取到AccessToken后,我们将页面重定向到writeWeibo.html,即写微博的页面。
   writeWeibo.html,很简单的HTML文件。 发布sina微博 请在这里写上140字符以内的文本:</br>测试新浪微博!</br></br> updateWeibo.jsp,用于发表文本微博,即调用WebOAuth.java 中的update方法。
  运行前我们要准备好Tomcat,把上面的源文件放到正确的目录下。另外SDK包中的commons-httpclient-3.1.jar包也要加到\WEB-INF\lib目录下,还有我编译打包的weibo4j.jar(里面是新浪微博开放平台中具体的Java实现)。
  运行Tomcat,在浏览器中访问request.jsp页面,如下图:
  点击链接,如下图(注意地址栏的变化):
  地址栏中的网址如下:
  ://localhost:8080/sinaweibo/callback.jsp
  填写具体有效的新浪微博账号、密码和授权。以下是我用于测试和授权的微博账号填写的结果:
  地址栏中的网址如下:
  :8080/sinaweibo/writeWeibo.html
  点击“发布”,如下图:
  登录微博查看,如下图:
  查看此帐户授权的应用列表:
  至此,利用新浪微博开放平台发布关于OAuth方式的微博大概就是这个过程了。
  概括:
  1、其实还有很多细节我没有讲到。我也尝试了很多次,找到问题,理解问题,然后解决问题;
  2、如果我们登录新浪微博的账号信息的cookie已经保存在浏览器中,那么授权时不需要输入账号信息,当然也可以不使用当前账号进行修改授权;
  3、还有一些信息是在控制台输入的,比如Token、URL、服务器返回信息,截图中没有给出。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(调用新浪微博开放平台API开发自己的微博应用(App))
  新浪微博开放平台虽然提供多种语言的开发SDK下载,但也有一些基本接口调用的demo和接口说明文档。但是经过几天的耐心尝试,感觉新浪微博开放平台上的入门指南和下载的Java开发包weibo4j包中的demo用法注释有些不一致。再加上自身领悟能力有限,遇到了不少难题。幸运的是,我没有放弃尝试理解它。废话不多说,这是我的学习过程。
  如果你想通过调用新浪微博开放平台API来开发自己的微博应用,第一步就是要有一个新浪微博账号和一个CSDN账号,因为我们需要同时用这两个账号创建一个微博应用,从而获得App key和CSDN账号。密钥 。App key 和 Secret key 有什么用?
  其实我只是看了新浪微博开放平台上的一系列说明,对App key和Secret key的使用并不是很了解。因为更重要的一点是要了解OAuth认证授权的整个过程,以及几个Token和4个URL在整个OAuth认证授权过程中的作用。
  当我第一次遇到完全没有概念的 OAuth 时,我认为它是不可能学习的。幸运的是,我找到了下面的文章,对理解OAuth很有帮助。链接如下:
  OAuth 中共有三个参与者,即用户、服务提供者和消费者。假设我想开发一个基于新浪微博开放平台的应用程序(App),供其他新浪微博用户使用。它们的对应关系如下:
  实际上,我们的App相当于User和Provider(新浪微博平台)的第三方应用。作为第三方App,要想访问用户存储在新浪微博平台的资源,必须经过一系列的认证和授权后才能工作。
  下面是根据我对整个OAuth认证授权过程的理解绘制的图(可以看略过,对以下一些概念有一定了解后再看这个流程图):
  结合上面的流程图,下面是我对这些术语的理解和对各个流程的描述:
  Consumer key和Consumer Secret:在新浪微博开放平台上分别称为App key和Secret key。Consumer 向 Provider 申请能够调用其开放的 API。申请通过后,Provider将其分配给满足其要求的Consumer,以唯一标识满足Provider要求的Consumer。
  对应上图中的流1和2。
  Request Token,Request Secret:当User访问Consumer,想要获取其特殊服务时,该服务由Consumer整合存储在Provider中的User自己的资源后返回。此时,Consumer 向 Provider 请求获取一个 Requst Token,用于唯一标识 Consumer 和 User 之间的具体关联。
  对应上图中的流程3、4、5。
  在流程6中,Consumer必须将User引导到Provider提供的OAuth认证授权页面。实际上,浏览器会重定向到附加了 Request Token 和 Request Secret 参数的 authenticationURL。URL 由 Provider 提供。
  接下来在流程7和流程8中,User授权Consumer(一般是输入账号和密码登录),然后Provider会重定向到流程1中Consumer提供的Callback_URL,并附加OAuth Token和OAuth URL 参数的验证程序。.
  流程9,Consumer通过之前已经从Provider获取的Request Token,再次请求Provider获取Access Token。
  Access Token和Access Secret:如果Provider在流程10中返回了一个未经User授权的Access Token,用于唯一标识特定的Consumer可以访问某个User存储在Provider中的资源和信息。然后Consumer就可以开始使用获取到的Access Token和Access Secret来访问对应User存储在Provider中的资源。
  在流程11中对用户信息进行整合和操作后,可以将具体的服务结果返回给用户。
  通过以上对OAuth流程的了解,我们知道User并没有将登录Provider所需的账号、密码等泄露给第三方Consumer。同时,用户可以使用消费者的特殊服务。多么巧妙又安全的操作过程!
  另外,上图中,Consumer向Provider发出了三个不同的请求,实际上就是Provider提供了三个不同功能的URL供Consumer访问。新浪微博开放平台三个网址截图如下:
  使用OAuth在新浪微博开放平台验证和发布微博
  使用新浪微博开放平台的API,首先要获取新浪分配的App key和App Secret。以下是我创建应用后新浪分配的App key和App Secret(这个要保密)。
  然后下载微博SDK,我用的是Java的weibo4j。
  将SDK包中Weibo.java类的App Key和App Secret修改为刚刚获取的App Key和App Secret,如下所示:
  完成这些后,就可以根据提供的Demo开始编写代码了。如下:
  WebOAuth.java用于初始化Weibo.java类所需的App Key和App Secret,并提供getRequestToken()和gettAccessToken()方法获取Request Token和Access Token。所需的参数显示在代码中。此外,还提供了一种发布文本微博的方法update()。
   package weibo4j.examples; import weibo4j.Status; import weibo4j.Weibo; import weibo4j.WeiboException; import weibo4j.http.AccessToken; import weibo4j.http.RequestToken; import java.io.UnsupportedEncodingException; // Web 方式认证 public class WebOAuth { private Weibo weibo; public WebOAuth(){ // 准备好Consumer Key、Consumer Secret // 对应于新浪微博应用就是申请到的 App key 和 Secret key System.setProperty("weibo4j.oauth.consumerKey", Weibo.CONSUMER_KEY); System.setProperty("weibo4j.oauth.consumerSecret", Weibo.CONSUMER_SECRET); weibo = new Weibo(); } // 根据传入的 callback_url 获取 request token public RequestToken getRequestToken(String backUrl) { try { // 指定 callback_url 并获得 request token RequestToken requestToken = weibo.getOAuthRequestToken(backUrl); System.out.println("Request token: " + requestToken.getToken()); System.out.println("Request token secret: " + requestToken.getTokenSecret()); return requestToken; } catch (Exception e) { System.out.println("获取Request token发生异常!"); e.printStackTrace(); return null; } } // 根据传入的 request token 和 verifier 获取 access token public AccessToken gettAccessToken(RequestToken requestToken, String verifier) { try { AccessToken accessToken = weibo.getOAuthAccessToken(requestToken .getToken(), requestToken.getTokenSecret(), verifier); System.out.println("Access token: " + accessToken.getToken()); System.out.println("Access token secret: " + accessToken.getTokenSecret()); return accessToken; } catch (Exception e) { System.out.println("获取Access token发生异常!"); e.printStackTrace(); return null; } } // 根据传入的 Access Token 和内容发表微博 public void update(AccessToken access, String content) { try { weibo.setToken(access.getToken(), access.getTokenSecret()); content = new String(content.getBytes("GBK"), "UTF-8"); Status status = weibo.updateStatus(content); System.out.println("成功发表微博:" + status.getText() + "."); } catch (UnsupportedEncodingException e) { System.out.println("微博内容转编码发生异常!"); e.printStackTrace(); } catch (WeiboException e) { System.out.println(来源gaodai.ma#com搞#代!码网"发表微博发生异常!"); e.printStackTrace(); } } } request.jsp,用于提供 callback_url(这里我们自定义为下文中的callback.jsp),当获取得到RequestToken之后,保存该RequestToken到Session中,并将页面重定向到callback.jsp进行验证、授权。 请点击进行Web方式的OAuth认证!
  callback.jsp,在上一步重定向后,会在callback_url后面附加oauth_verifier参数。这时候我们根据Session中保存的RequestToken和获取到的oauth_verifier参数申请AccessToken。获取到AccessToken后,我们将页面重定向到writeWeibo.html,即写微博的页面。
   writeWeibo.html,很简单的HTML文件。 发布sina微博 请在这里写上140字符以内的文本:</br>测试新浪微博!</br></br> updateWeibo.jsp,用于发表文本微博,即调用WebOAuth.java 中的update方法。
  运行前我们要准备好Tomcat,把上面的源文件放到正确的目录下。另外SDK包中的commons-httpclient-3.1.jar包也要加到\WEB-INF\lib目录下,还有我编译打包的weibo4j.jar(里面是新浪微博开放平台中具体的Java实现)。
  运行Tomcat,在浏览器中访问request.jsp页面,如下图:
  点击链接,如下图(注意地址栏的变化):
  地址栏中的网址如下:
  ://localhost:8080/sinaweibo/callback.jsp
  填写具体有效的新浪微博账号、密码和授权。以下是我用于测试和授权的微博账号填写的结果:
  地址栏中的网址如下:
  :8080/sinaweibo/writeWeibo.html
  点击“发布”,如下图:
  登录微博查看,如下图:
  查看此帐户授权的应用列表:
  至此,利用新浪微博开放平台发布关于OAuth方式的微博大概就是这个过程了。
  概括:
  1、其实还有很多细节我没有讲到。我也尝试了很多次,找到问题,理解问题,然后解决问题;
  2、如果我们登录新浪微博的账号信息的cookie已经保存在浏览器中,那么授权时不需要输入账号信息,当然也可以不使用当前账号进行修改授权;
  3、还有一些信息是在控制台输入的,比如Token、URL、服务器返回信息,截图中没有给出。

使用新浪微博开放平台api同步微博内容至自己网站(新浪微博短链接API是开放的,国外几家已经悲剧了)

网站优化优采云 发表了文章 • 0 个评论 • 36 次浏览 • 2022-01-12 22:12 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(新浪微博短链接API是开放的,国外几家已经悲剧了)
  在短地址(也叫短链接、缩短地址等)方面,推特发展后,还在不断发展,很多互联网网站使用短地址,国内外很多,但稳定且稳定。靠谱,国内的更靠谱。我不怕没有墙。几家外国公司已经遭遇了悲剧。因此,如果项目中使用短地址,我还是推荐使用新浪或者其他国内短链接服务。
  新浪微博短链接API开放,腾讯微博短地址API未开放。我想通过不同的途径获取腾讯微博的API,但以失败告终。新浪微博短地址API不需要用户登录,直接调用即可,速度非常快。以下代码来自网站,使用CURL POST方法作为参考。
  新浪微博短链接API文档在旧版开发文档中,新版中没有添加:
  function shortenSinaUrl($long_url){
$apiKey='1234567890';//这里是你申请的应用的API KEY,随便写个应用名就会自动分配给你
$apiUrl='http://api.t.sina.com.cn/short_url/shorten.json?source='.$apiKey.'&url_long='.$long_url;
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $apiUrl);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
curl_close($curlObj);
$json = json_decode($response);
return $json[0]->url_short;
}
function expandSinaUrl($short_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/expand.json?source='.$apiKey.'&url_short='.$short_url;
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $apiUrl);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
curl_close($curlObj);
$json = json_decode($response);
return $json[0]->url_long;
}
  参考新浪微博的开发文档,推荐使用get方法获取。那个代码更简单
  function shorturl($long_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/shorten.json?source='.$apiKey.'&url_long='.$long_url;
$response = file_get_contents($apiUrl);
$json = json_decode($response);
return $json[0]->url_short;
}
function expandurl($short_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/expand.json?source='.$apiKey.'&url_short='.$short_url;
$response = file_get_contents($apiUrl);
$json = json_decode($response);
return $json[0]->url_long;
}
  好的,是不是更简单了?
  调试上述代码时,需要填写自己的API key,否则无法获取。
  特别说明:短地址服务现在只为已经认证过的APP KEY提供服务,刚刚申请的APP KEY会提示没有权限。您可以使用两个键 209678993 和 3818214747 进行测试。这两个密钥的来源未知,不推荐用于生产。(感谢@congxz6688 的提醒)
  jucelin写了一个调试文档,可以测试一下:
  长到短:://
  短到长::///S4bLBm
  参数只有2个,类型:1表示长转短,2表示短转长,下面的网址是目标域名,因为懒,没有错误判断,新浪微博短地址不支持短地址和那么短地址是的,逻辑上应该是这样控制的。(不信可以试试)。
  新浪微博短地址接口更详细的说明请参考“新浪微博短地址接口”。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(新浪微博短链接API是开放的,国外几家已经悲剧了)
  在短地址(也叫短链接、缩短地址等)方面,推特发展后,还在不断发展,很多互联网网站使用短地址,国内外很多,但稳定且稳定。靠谱,国内的更靠谱。我不怕没有墙。几家外国公司已经遭遇了悲剧。因此,如果项目中使用短地址,我还是推荐使用新浪或者其他国内短链接服务。
  新浪微博短链接API开放,腾讯微博短地址API未开放。我想通过不同的途径获取腾讯微博的API,但以失败告终。新浪微博短地址API不需要用户登录,直接调用即可,速度非常快。以下代码来自网站,使用CURL POST方法作为参考。
  新浪微博短链接API文档在旧版开发文档中,新版中没有添加:
  function shortenSinaUrl($long_url){
$apiKey='1234567890';//这里是你申请的应用的API KEY,随便写个应用名就会自动分配给你
$apiUrl='http://api.t.sina.com.cn/short_url/shorten.json?source='.$apiKey.'&url_long='.$long_url;
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $apiUrl);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
curl_close($curlObj);
$json = json_decode($response);
return $json[0]->url_short;
}
function expandSinaUrl($short_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/expand.json?source='.$apiKey.'&url_short='.$short_url;
$curlObj = curl_init();
curl_setopt($curlObj, CURLOPT_URL, $apiUrl);
curl_setopt($curlObj, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curlObj, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($curlObj, CURLOPT_HEADER, 0);
curl_setopt($curlObj, CURLOPT_HTTPHEADER, array('Content-type:application/json'));
$response = curl_exec($curlObj);
curl_close($curlObj);
$json = json_decode($response);
return $json[0]->url_long;
}
  参考新浪微博的开发文档,推荐使用get方法获取。那个代码更简单
  function shorturl($long_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/shorten.json?source='.$apiKey.'&url_long='.$long_url;
$response = file_get_contents($apiUrl);
$json = json_decode($response);
return $json[0]->url_short;
}
function expandurl($short_url){
$apiKey='1234567890';//要修改这里的key再测试哦
$apiUrl='http://api.t.sina.com.cn/short_url/expand.json?source='.$apiKey.'&url_short='.$short_url;
$response = file_get_contents($apiUrl);
$json = json_decode($response);
return $json[0]->url_long;
}
  好的,是不是更简单了?
  调试上述代码时,需要填写自己的API key,否则无法获取。
  特别说明:短地址服务现在只为已经认证过的APP KEY提供服务,刚刚申请的APP KEY会提示没有权限。您可以使用两个键 209678993 和 3818214747 进行测试。这两个密钥的来源未知,不推荐用于生产。(感谢@congxz6688 的提醒)
  jucelin写了一个调试文档,可以测试一下:
  长到短:://
  短到长::///S4bLBm
  参数只有2个,类型:1表示长转短,2表示短转长,下面的网址是目标域名,因为懒,没有错误判断,新浪微博短地址不支持短地址和那么短地址是的,逻辑上应该是这样控制的。(不信可以试试)。
  新浪微博短地址接口更详细的说明请参考“新浪微博短地址接口”。

使用新浪微博开放平台api同步微博内容至自己网站(联合第三方平台登录接入,初次接触开放平台和AppSecret5 )

网站优化优采云 发表了文章 • 0 个评论 • 85 次浏览 • 2022-01-11 07:00 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(联合第三方平台登录接入,初次接触开放平台和AppSecret5
)
  最近做了一个关于联合第三方平台的登录访问,第一次接触到开放平台,在这里做个笔记。
  开发前的准备工作如下:
  1、注册新浪微博
  2、访问新浪微博开发平台。如果是企业,申请企业准入并提交相关材料进行审核;如果是个人开发者,请申请个人开发者申请。我们以开发者为例
  3、使用新浪微博开放API,需要向新浪申请一个appkey和一个App Secret。这些是入口。您必须先获得这两个,然后才能进行下一个访问工作。
  4、输入完善个人信息后,必须完成身份验证审核。审核完成后,新浪开放平台会给出appkey和App Secret。
  5、接下来就是如何使用appkey和App Secret了。您需要在开放平台下载文档或演示代码。其实提供的文档基本上都是技术文档,很多东西都没有解释清楚。还是会有很多麻烦
  6、新浪开放平台提供了很多不同开发语言的SDK,这里我选择java SDK,下载一个zip文件(包括新接口和OAuth2.0),解压后即可可以直接导入go到eclipse,结构如下,包括weibo4j源码和示例代码
  
  这里是一个config配置文件,打开如下:
  
  我们之前申请的appkey和App Secret就派上用场了。这里的client_ID为appkey,client_SERCRET为App Secret,填写对应内容,redirect_URI为回调地址。
  点击“第三方”-》跳转微博登录-》登录ok,授权-》回调自己的应用,这里是回调地址的意思。
  7、开始运行测试程序,测试程序在example下,包weibo4j.examples.oauth2下的类OAuth4Code,这里我们需要做一些修改,修改程序在
  oauth.authorize("code",args[0],args[1]),把这一段改成oauth.authorize("code","","all"),至于为什么改这个,请看界面此处的文档 oauth.authorize 使用说明
  假设我们这里没有回调地址,配置文件中的redirect_URI为空。运行后会自动打开浏览器运行测试,显示如下:
  
  此时的URL地址为:
  这说明我的appkey和App Secret是有效的,因为我们还没有创建正式的应用,新浪无法识别我的来源
  8、在开放平台上创建应用,如下图
  
  这里有三种类型的应用程序,网站 访问、站内应用程序和移动应用程序。如果是企业行为,有公有域名可以访问,应用通过域名访问。这里可以用任何方法,但是如果我们只是一个简单的开发者,没有公网域名,比如内网模式,ip以内网地址192.168.开头1.*,本地127.0.0.1等,这里只能选择创建站内应用,填写如下
  
  这里红框标注的地方就是回调地址。如果我没有公网ip和域名的话,我在局域网玩的时候随便填,但是不能用localhost代替127.0.0.1,这里是按照配置要求做的,这个配置的要求很严格,
  尤其是下面的应用图标比较麻烦。完成后,您可以提交它们以供审核。
  9、提交审核后,新浪开放平台会在1天左右第一时间向您的邮箱发送邮件通知您审核结果,但无论审核结果是否失败,关键是提交审核。没有审核成功,这里可以照常使用
  
  10、完成测试项目中的配置文件redirect_URI,必须与创建应用时填写的【应用实际地址】一致,这是回调地址!完成配置后,再次运行OAuth4Code.java,如图
  
  在这里你会跳转到新浪微博的登录页面。登录新浪微博账号后,需要点击授权,表示平台可以访问您的微博账号相关内容分享您的信息等。授权结束后,
  将返回一个代码。这段代码非常重要。它是我们整个访问第三方平台的门钥匙。通过这段代码,我们可以获取到用户的access_token、UID等内容,相当于整个访问过程。
  11、调用新浪微博开放API
  这里我们需要研究这些API来满足访问的需要。首先要熟悉的是OAuth2.0授权接口,网上可以查到,如下:
  
  12、通过servlet程序调用开放API获取新浪微博的UID和微博名的示例
  
  response.setContentType("text/html;charset=UTF-8");
String accessToken = null ;
String uid = null ;
String screenName = null ;
String username = null ;
AccessToken accessTokenObj = null ;
Oauth oauth2 = new Oauth();
try {
out = response.getWriter();
accessTokenObj = oauth2.getAccessTokenByCode(code) ;
logger.info(accessTokenObj);
accessToken = accessTokenObj.getAccessToken() ;
oauth2.setToken(accessToken) ;
Account account = new Account() ;
account.client.setToken(accessToken) ;
JSONObject uidJson = account.getUid() ;
uid = uidJson.getString("uid") ;

Users users = new Users() ;
users.client.setToken(accessToken) ;
User weiboUser = users.showUserById(uid) ;
username = weiboUser.getName() ;
screenName = weiboUser.getScreenName() ;


} catch (WeiboException | IOException | JSONException e) {
e.printStackTrace();
}
out.println("微博访问Token_Info:" + accessTokenObj + "\t");
out.println("微博访问Token:" + accessToken + "\t");
out.println("微博用户-Uid:" + uid + "\t");
out.println("微博用户-名称:" + screenName + "\t");
out.flush();
out.close();*/
   查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(联合第三方平台登录接入,初次接触开放平台和AppSecret5
)
  最近做了一个关于联合第三方平台的登录访问,第一次接触到开放平台,在这里做个笔记。
  开发前的准备工作如下:
  1、注册新浪微博
  2、访问新浪微博开发平台。如果是企业,申请企业准入并提交相关材料进行审核;如果是个人开发者,请申请个人开发者申请。我们以开发者为例
  3、使用新浪微博开放API,需要向新浪申请一个appkey和一个App Secret。这些是入口。您必须先获得这两个,然后才能进行下一个访问工作。
  4、输入完善个人信息后,必须完成身份验证审核。审核完成后,新浪开放平台会给出appkey和App Secret。
  5、接下来就是如何使用appkey和App Secret了。您需要在开放平台下载文档或演示代码。其实提供的文档基本上都是技术文档,很多东西都没有解释清楚。还是会有很多麻烦
  6、新浪开放平台提供了很多不同开发语言的SDK,这里我选择java SDK,下载一个zip文件(包括新接口和OAuth2.0),解压后即可可以直接导入go到eclipse,结构如下,包括weibo4j源码和示例代码
  
  这里是一个config配置文件,打开如下:
  
  我们之前申请的appkey和App Secret就派上用场了。这里的client_ID为appkey,client_SERCRET为App Secret,填写对应内容,redirect_URI为回调地址。
  点击“第三方”-》跳转微博登录-》登录ok,授权-》回调自己的应用,这里是回调地址的意思。
  7、开始运行测试程序,测试程序在example下,包weibo4j.examples.oauth2下的类OAuth4Code,这里我们需要做一些修改,修改程序在
  oauth.authorize("code",args[0],args[1]),把这一段改成oauth.authorize("code","","all"),至于为什么改这个,请看界面此处的文档 oauth.authorize 使用说明
  假设我们这里没有回调地址,配置文件中的redirect_URI为空。运行后会自动打开浏览器运行测试,显示如下:
  
  此时的URL地址为:
  这说明我的appkey和App Secret是有效的,因为我们还没有创建正式的应用,新浪无法识别我的来源
  8、在开放平台上创建应用,如下图
  
  这里有三种类型的应用程序,网站 访问、站内应用程序和移动应用程序。如果是企业行为,有公有域名可以访问,应用通过域名访问。这里可以用任何方法,但是如果我们只是一个简单的开发者,没有公网域名,比如内网模式,ip以内网地址192.168.开头1.*,本地127.0.0.1等,这里只能选择创建站内应用,填写如下
  
  这里红框标注的地方就是回调地址。如果我没有公网ip和域名的话,我在局域网玩的时候随便填,但是不能用localhost代替127.0.0.1,这里是按照配置要求做的,这个配置的要求很严格,
  尤其是下面的应用图标比较麻烦。完成后,您可以提交它们以供审核。
  9、提交审核后,新浪开放平台会在1天左右第一时间向您的邮箱发送邮件通知您审核结果,但无论审核结果是否失败,关键是提交审核。没有审核成功,这里可以照常使用
  
  10、完成测试项目中的配置文件redirect_URI,必须与创建应用时填写的【应用实际地址】一致,这是回调地址!完成配置后,再次运行OAuth4Code.java,如图
  
  在这里你会跳转到新浪微博的登录页面。登录新浪微博账号后,需要点击授权,表示平台可以访问您的微博账号相关内容分享您的信息等。授权结束后,
  将返回一个代码。这段代码非常重要。它是我们整个访问第三方平台的门钥匙。通过这段代码,我们可以获取到用户的access_token、UID等内容,相当于整个访问过程。
  11、调用新浪微博开放API
  这里我们需要研究这些API来满足访问的需要。首先要熟悉的是OAuth2.0授权接口,网上可以查到,如下:
  
  12、通过servlet程序调用开放API获取新浪微博的UID和微博名的示例
  
  response.setContentType("text/html;charset=UTF-8");
String accessToken = null ;
String uid = null ;
String screenName = null ;
String username = null ;
AccessToken accessTokenObj = null ;
Oauth oauth2 = new Oauth();
try {
out = response.getWriter();
accessTokenObj = oauth2.getAccessTokenByCode(code) ;
logger.info(accessTokenObj);
accessToken = accessTokenObj.getAccessToken() ;
oauth2.setToken(accessToken) ;
Account account = new Account() ;
account.client.setToken(accessToken) ;
JSONObject uidJson = account.getUid() ;
uid = uidJson.getString("uid") ;

Users users = new Users() ;
users.client.setToken(accessToken) ;
User weiboUser = users.showUserById(uid) ;
username = weiboUser.getName() ;
screenName = weiboUser.getScreenName() ;


} catch (WeiboException | IOException | JSONException e) {
e.printStackTrace();
}
out.println("微博访问Token_Info:" + accessTokenObj + "\t");
out.println("微博访问Token:" + accessToken + "\t");
out.println("微博用户-Uid:" + uid + "\t");
out.println("微博用户-名称:" + screenName + "\t");
out.flush();
out.close();*/
  

使用新浪微博开放平台api同步微博内容至自己网站(本次开放微博渠道接口,不需要验证网站地址。。)

网站优化优采云 发表了文章 • 0 个评论 • 64 次浏览 • 2022-01-10 10:19 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(本次开放微博渠道接口,不需要验证网站地址。。)
  此次开通微博频道界面,为广大站长提供了更便捷的申请方式。
  不仅需要在管理后台点击应用,还可以将内容同步到微博,显示来自自己网站。
  无需等待开放平台审核,无需去微博开放平台申请,无需验证网站地址。
  新浪微博为您提供支持和开放渠道接口,目前实现了以下功能。
  发布更新文章,同时发布到微博时,来源显示为网站自定义的名称,链接地址为本站自定义链接。它非常强大吗?!
  
  要实现这个功能,只需要简单的 3 个步骤:
  【第一步】打开管理后台,进入设置,滚动至底部:设置新浪微博频道AppKey。
  
  【第二步】输入站点名称和网站url:网站的名称将显示为微博来源,不超过5个汉字,或10个英文/数字。url:点击源后指向的网站网址,我们默认为您填写。
  【第三步】授权此api:使用此时登录的wp账号对应的新浪微博账号授权此api。
  
  完毕!发帖文章来测试一下吧~
  注意:
  1.微博默认会在站点名称后加一个_ds logo,这样站点就不会和原微博注册冲突了;
  2.仅对拥有授权微博账号且在有效期内的用户,同步时会显示来源;
  3.在内测期间,新浪微博只提供7天的授权,您可以在页面更新授权。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(本次开放微博渠道接口,不需要验证网站地址。。)
  此次开通微博频道界面,为广大站长提供了更便捷的申请方式。
  不仅需要在管理后台点击应用,还可以将内容同步到微博,显示来自自己网站。
  无需等待开放平台审核,无需去微博开放平台申请,无需验证网站地址。
  新浪微博为您提供支持和开放渠道接口,目前实现了以下功能。
  发布更新文章,同时发布到微博时,来源显示为网站自定义的名称,链接地址为本站自定义链接。它非常强大吗?!
  
  要实现这个功能,只需要简单的 3 个步骤:
  【第一步】打开管理后台,进入设置,滚动至底部:设置新浪微博频道AppKey。
  
  【第二步】输入站点名称和网站url:网站的名称将显示为微博来源,不超过5个汉字,或10个英文/数字。url:点击源后指向的网站网址,我们默认为您填写。
  【第三步】授权此api:使用此时登录的wp账号对应的新浪微博账号授权此api。
  
  完毕!发帖文章来测试一下吧~
  注意:
  1.微博默认会在站点名称后加一个_ds logo,这样站点就不会和原微博注册冲突了;
  2.仅对拥有授权微博账号且在有效期内的用户,同步时会显示来源;
  3.在内测期间,新浪微博只提供7天的授权,您可以在页面更新授权。

使用新浪微博开放平台api同步微博内容至自己网站(我是移动应用开发者,在我的应用中集成微博的功能)

网站优化优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2022-01-10 03:09 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(我是移动应用开发者,在我的应用中集成微博的功能)
  我是一名移动应用开发者,我想在我的应用中集成微博的功能
  移动应用
  微博开放平台为移动应用开发者提供了一个简单的开发框架,多平台、多终端的sdk,将帮助您将微博的功能集成到您的应用或wap站中。
  IOS H5
  我想为企业开发微博平台的应用,服务企业号和他的客户
  商业服务
  通过微博开放平台提供的接口和渠道,企业开发者为微博账号提供与用户私信交互、首页定制、数据分析等服务,即微服务。微服务只支持企业开发者申请访问。
  轻应用微博支付
  更多可以帮助您的文档
  新手指南在访问网站和开发应用之前,你需要知道如何成为平台的开发者,如何创建应用,提交审核,最终让微博用户在微博上找到你发布的应用微博应用广场。
  大部分API的访问,比如发微博、获取私信、关注,都需要用户身份。目前,微博开放平台的用户身份认证使用oauth2.0协议,并提供对Web、桌面和移动应用的支持。.
  API文档:包括微博相关API、公共服务API、地理信息API。对于API,您还可以在文档调用页面进行评分和反馈,以便我们更好地为您提供接口支持。
  开发包:包括ios、android、java、php、python等多种语言。实现接入第三方wap站、客户端等各种应用。
  了解微博开放平台的政策和规范,清楚地开发和运营自己的应用程序:平台约定,,,,。
  常见问题 应用相关问题包括:应用管理、审计、高级接口和特殊权限、应用调优;接口问题如接口策略等问题。您可以在此处查看和解决它们。
  语言:中文
  从 ””
  文件更新时间:2017-09-13 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(我是移动应用开发者,在我的应用中集成微博的功能)
  我是一名移动应用开发者,我想在我的应用中集成微博的功能
  移动应用
  微博开放平台为移动应用开发者提供了一个简单的开发框架,多平台、多终端的sdk,将帮助您将微博的功能集成到您的应用或wap站中。
  IOS H5
  我想为企业开发微博平台的应用,服务企业号和他的客户
  商业服务
  通过微博开放平台提供的接口和渠道,企业开发者为微博账号提供与用户私信交互、首页定制、数据分析等服务,即微服务。微服务只支持企业开发者申请访问。
  轻应用微博支付
  更多可以帮助您的文档
  新手指南在访问网站和开发应用之前,你需要知道如何成为平台的开发者,如何创建应用,提交审核,最终让微博用户在微博上找到你发布的应用微博应用广场。
  大部分API的访问,比如发微博、获取私信、关注,都需要用户身份。目前,微博开放平台的用户身份认证使用oauth2.0协议,并提供对Web、桌面和移动应用的支持。.
  API文档:包括微博相关API、公共服务API、地理信息API。对于API,您还可以在文档调用页面进行评分和反馈,以便我们更好地为您提供接口支持。
  开发包:包括ios、android、java、php、python等多种语言。实现接入第三方wap站、客户端等各种应用。
  了解微博开放平台的政策和规范,清楚地开发和运营自己的应用程序:平台约定,,,,。
  常见问题 应用相关问题包括:应用管理、审计、高级接口和特殊权限、应用调优;接口问题如接口策略等问题。您可以在此处查看和解决它们。
  语言:中文
  从 ””
  文件更新时间:2017-09-13

使用新浪微博开放平台api同步微博内容至自己网站(注册新浪微博03登陆新浪开放平台09创建应用获取AccessToken09 )

网站优化优采云 发表了文章 • 0 个评论 • 74 次浏览 • 2022-01-10 03:09 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(注册新浪微博03登陆新浪开放平台09创建应用获取AccessToken09
)
  前段时间,我抓取了微博的数据。想过用htmlunit模拟登录新浪微博抓取数据。这两天看了新浪微博官方API,发现可以通过新浪微博官方API获取新浪微博。信息,更全面,更简单。以下是从注册新浪微博,到完善新浪微博开放平台开发者信息,再创建应用获取Access Token,最后开发自己的应用。
  1 注册126个邮箱
  
  02注册新浪微博
  
  03 登录新浪微博
  
  04 登陆新浪开放平台
  
  05查看微博API
  
  06 可以看到获得用户关注的用户信息列表
  
  07 打开api测试工具
  
  08创建应用获取AccessToken
  
  09 创建应用
  
  10选择应用类型
  
  11 完成开发者信息(如果之前已经完善了开发者信息,则跳过此步骤)
  
  12 完整的开发者信息
  
  13 完成电子邮件确认
  
  14 创建应用程序
  
  15 成功创建应用(此处Appkey暂时不可用)
  
  16 回到API测试用户关系的地方
  
  17 找到我的uid(在个人主页,后面最后一个数字是个人uid)
  
  18 如果可以看到,请关注此用户
  
  19 最终结果,调用新浪微博的api,可以看到获取到的数据为json格式
  
  以上完成后,在网页上成功调用新浪微博提供的api接口。接下来,您需要编写一个程序来实现它。程序是模拟这个网页发送请求,返回的数据是json格式,数据字段已经定义好了。
  比如模拟这个请求,然后解析数据:
  
  做完这些,就该开始正式开发微博数据分析程序了。
   查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(注册新浪微博03登陆新浪开放平台09创建应用获取AccessToken09
)
  前段时间,我抓取了微博的数据。想过用htmlunit模拟登录新浪微博抓取数据。这两天看了新浪微博官方API,发现可以通过新浪微博官方API获取新浪微博。信息,更全面,更简单。以下是从注册新浪微博,到完善新浪微博开放平台开发者信息,再创建应用获取Access Token,最后开发自己的应用。
  1 注册126个邮箱
  
  02注册新浪微博
  
  03 登录新浪微博
  
  04 登陆新浪开放平台
  
  05查看微博API
  
  06 可以看到获得用户关注的用户信息列表
  
  07 打开api测试工具
  
  08创建应用获取AccessToken
  
  09 创建应用
  
  10选择应用类型
  
  11 完成开发者信息(如果之前已经完善了开发者信息,则跳过此步骤)
  
  12 完整的开发者信息
  
  13 完成电子邮件确认
  
  14 创建应用程序
  
  15 成功创建应用(此处Appkey暂时不可用)
  
  16 回到API测试用户关系的地方
  
  17 找到我的uid(在个人主页,后面最后一个数字是个人uid)
  
  18 如果可以看到,请关注此用户
  
  19 最终结果,调用新浪微博的api,可以看到获取到的数据为json格式
  
  以上完成后,在网页上成功调用新浪微博提供的api接口。接下来,您需要编写一个程序来实现它。程序是模拟这个网页发送请求,返回的数据是json格式,数据字段已经定义好了。
  比如模拟这个请求,然后解析数据:
  
  做完这些,就该开始正式开发微博数据分析程序了。
  

使用新浪微博开放平台api同步微博内容至自己网站(怎么把微信朋友圈同步到新浪微博呢?的图片文字一一复制粘帖)

网站优化优采云 发表了文章 • 0 个评论 • 75 次浏览 • 2022-01-06 19:07 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(怎么把微信朋友圈同步到新浪微博呢?的图片文字一一复制粘帖)
  微信朋友圈里的东西也可以同步到新浪微博。你刚刚知道你出去了。那么,微信朋友圈怎么同步到新浪微博呢?下面小编为大家带来微信朋友圈同步到新浪微博的教程。无需将朋友圈的图片和文字一一复制粘贴。是不是很棒?
  
  将微信朋友圈同步到新浪微博
  在微信公众号和朋友圈疯狂挤压个人时间的当下,很多人的微博都逐渐被抛弃了,这个工具可以帮你自动同步任何朋友圈图文内容到你的微博上。
  这个可以为你省去很多麻烦的小工具叫做“同步圈”。顾名思义,就是把你的“朋友圈”“同步”到微博。
  
  将微信朋友圈同步到新浪微博
  为了一劳永逸地享受自动同步的便利,您需要提前在PC浏览器中使用您的个人微博账号登录同步推文。网址在这里。获得登录授权后,网页上会显示二维码。用微信扫一扫后,添加一个名为“同步圈”的个人微信账号,很快就会通过验证。
  接下来,您需要将二维码下方的四位验证码发送到“同步圈”账号,系统会提示您绑定成功!
  经测试,“同步圈”目前支持纯文本、文本+表情、文本+图片的自动同步。您在朋友圈发布的小视频和地理位置无法同步到您的个人微博。经过实测,我也发现一些特殊的表情符号会被“同步圈”误识别,可能会造成一些歧义或误解。这大概是微信朋友圈和微博支持的表情不一致造成的。
  从原理上看,“同步圈”调用微信朋友圈侧的某些内容识别接口,可以自动抓取绑定用户的朋友圈内容,然后利用微博开放平台的API接口发送相同内容出去。抽象地说,“同步圈”与著名的自动化服务IFTTT非常相似。它刚刚在微信封闭的城墙上开设了一个单向流量信息站,帮助用户将内容输出到更广阔的公共网络空间。
  遗憾的是,根据pc6编辑对腾讯和微信团队的了解,这个同步圈的“小聪明”可能很快就会失败。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(怎么把微信朋友圈同步到新浪微博呢?的图片文字一一复制粘帖)
  微信朋友圈里的东西也可以同步到新浪微博。你刚刚知道你出去了。那么,微信朋友圈怎么同步到新浪微博呢?下面小编为大家带来微信朋友圈同步到新浪微博的教程。无需将朋友圈的图片和文字一一复制粘贴。是不是很棒?
  
  将微信朋友圈同步到新浪微博
  在微信公众号和朋友圈疯狂挤压个人时间的当下,很多人的微博都逐渐被抛弃了,这个工具可以帮你自动同步任何朋友圈图文内容到你的微博上。
  这个可以为你省去很多麻烦的小工具叫做“同步圈”。顾名思义,就是把你的“朋友圈”“同步”到微博。
  
  将微信朋友圈同步到新浪微博
  为了一劳永逸地享受自动同步的便利,您需要提前在PC浏览器中使用您的个人微博账号登录同步推文。网址在这里。获得登录授权后,网页上会显示二维码。用微信扫一扫后,添加一个名为“同步圈”的个人微信账号,很快就会通过验证。
  接下来,您需要将二维码下方的四位验证码发送到“同步圈”账号,系统会提示您绑定成功!
  经测试,“同步圈”目前支持纯文本、文本+表情、文本+图片的自动同步。您在朋友圈发布的小视频和地理位置无法同步到您的个人微博。经过实测,我也发现一些特殊的表情符号会被“同步圈”误识别,可能会造成一些歧义或误解。这大概是微信朋友圈和微博支持的表情不一致造成的。
  从原理上看,“同步圈”调用微信朋友圈侧的某些内容识别接口,可以自动抓取绑定用户的朋友圈内容,然后利用微博开放平台的API接口发送相同内容出去。抽象地说,“同步圈”与著名的自动化服务IFTTT非常相似。它刚刚在微信封闭的城墙上开设了一个单向流量信息站,帮助用户将内容输出到更广阔的公共网络空间。
  遗憾的是,根据pc6编辑对腾讯和微信团队的了解,这个同步圈的“小聪明”可能很快就会失败。

使用新浪微博开放平台api同步微博内容至自己网站(网络真是麻烦怎么办?指令是做什么的?)

网站优化优采云 发表了文章 • 0 个评论 • 48 次浏览 • 2022-01-06 19:04 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(网络真是麻烦怎么办?指令是做什么的?)
  是不是因为我不是这个专业的?突然觉得上网真的很麻烦,尤其是要实现某个功能的编程,但是如果有时间,我会学习的。毕竟,我自己的程序可以让自己放心,没有广告,没有垃圾,并且知道哪个指令做了什么。
  我前天注册了一个IFTTT账号。我刚注册后没用过。我使用了其他人分享的食谱来构建自己的同步并实现 Twitter 的定时天气预报。后来发现自己想实现的某个功能很难找到,于是自己尝试了一下。搭建一个其实很简单,但是有一种人叫-新手,我也是新手,不过现在可以了。
  昨天突然想把推特和国内的微博同步,但是因为是国内的微博,IFTTT对自己的服务质量和国内的各种网络监控和防火墙造成了困难,最后想出了解决办法。: 搭建一个wordpress(有免费的,我最后给),用搭建好的wordpress作为转账,此时IFTTT支持twitter同步到wordpress(配方点这里,我设置了原创时间转账,所以评论的转推不会同步),Facebook和Tumblr也是一样的,下面是一样的。这只是完成了一个中介;
  下一步就是将wordpress中的博客内容(申请WP教程)同步到各个微博。这个过程可以在 wordpress 插件的帮助下实现。我总共测试了两个插件:
  一、wp-sns-share
  这个插件已经测试可以实现手动发博文,但是IFTTT自动发的文章不会自动转发,所以放弃了。如果手动更新,可以选择。
  二、新版微博通同步
  本插件经过测试,可以很好的实现以上功能,目测延时很短。设置时,您只需登录您注册的微博通账号即可。缺点是需要额外申请微博通账号并自动发布。's微博显示“微博通发布”,他对新浪微博的授权有时间限制:30天,其实还不错,一个月就新授权一次
  三.代码方法(20140320补充,来自+King Goo的博客)
  该方法需要使用新浪的接口,如下:
  1) 前往新浪微博开放平台创建站内应用。审核通过也可以,审核通过了就可以在微博下展示某博客的申请,比如某博客。你可以在谷歌搜索上创建就可以了,很简单(但是如果你没有通过审核想通过审核,我可以提供付费帮助嘎嘎~),创建应用后需要使用App Key以下申请的申请;
  2)编辑你的主题的functions.php文件并在最后添加以下代码
  
// 微博同步
function post_to_sina_weibo($post_ID) {
if( wp_is_post_revision($post_ID) ) return;
$get_post_info = get_post($post_ID);
$get_post_centent = get_post($post_ID)->post_content;
//去掉文章内的html编码的空格、换行、tab等符号(如果你文章的编码格式是这样子,可以将下面的"//"去掉即开启此功能)
//$get_post_centent = str_replace("\t", " ", str_replace("\n", " ", str_replace(" ", " ", $get_post_centent)));
$get_post_title = get_post($post_ID)->post_title;
if ( $get_post_info->post_status == 'publish' && $_POST['original_post_status'] != 'publish' ) {
$request = new WP_Http;
$status = '【' . strip_tags( $get_post_title ) . '】 ' . mb_strimwidth(strip_tags( apply_filters('the_content', $get_post_centent)),0, 132,'...') . ' 全文地址:' . get_permalink($post_ID) ;
$api_url = 'https://api.weibo.com/2/statuses/update.json';
$body = array( 'status' => $status, 'source'=>'4135063399');
$headers = array( 'Authorization' => 'Basic ' . '1fFjYc3uQHZpcF32fS5jb146MxFeY19DYF53aWfzNA==' );

$result = $request->post( $api_url , array( 'body' => $body, 'headers' => $headers ) );
}
}
add_action('publish_post', 'post_to_sina_weibo', 0);
  你可能应该知道这意味着什么
  如果(wp_is_post_revision($post_ID))返回;
  //如果是修改版 $get_post_info = get_post($post_ID);
  //获取文章信息
  $get_post_centent =get_post($post_ID)-&gt;post_content;
  //文章Content(不知道为什么使用了所有post_ID数据后获取不到内容,所以只在请求下)
  $get_post_title =get_post($post_ID)-&gt;post_title;
  //文章标题
  if ($get_post_info-&gt;post_status =='publish' &amp;&amp;$_POST['original_post_status'] !='publish') {
  //判断是发布的文章还是页面
  $status ='['。strip_tags( $get_post_title).'] '.mb_strimwidth(strip_tags( apply_filters('the_content',$get_post_centent)),0, 132,'...').' 全文地址:'.get_permalink($post_ID);
  //strip_tags( $get_post_title) 就是获取文章标题
  // mb_strimwidth(strip_tags( apply_filters('the_content',$get_post_centent)),0, 132,'...') 是截取的长度文章
  //get_permalink($post_ID) 文章 链接地址
  $api_url ='';
  //旧接口不能用了,必须用v2.0
  $body =array('status' =&gt; $status,'source'=&gt;'4135063399');
  // $status要发布的微博文字内容,内容不超过140个汉字
  // $source 的值是应用程序的AppKey
  $headers = array('Authorization' =&gt;'Basic '.'bate64 编码加密');
  //'bate64编码加密'的位置在这里,你可以自己加密你的账号和密码,格式为你的新浪微博登录账号:登录密码(例如:密码)
  //如果你不喜欢用这种方式 $headers = array('Authorization' =&gt;'Basic '.'Bate64 encoding encryption'),就用下面的方法代替,一样
  //您的新浪微博登录名
  $用户名 = ";
  //您的新浪微博登录密码
  $密码 = ”;
  $headers = array('Authorization' =&gt;'Basic '.base64_encode('$username:$password'));
  最后,在您发送博文后,一条消息将立即同步到微博
  微博接口请求参数:
  必需的
  类型和范围
  操作说明
  来源
  错误的
  细绳
  OAuth授权方式不需要该参数,其他授权方式为必选参数,值为应用的AppKey
  地位
  真的
  细绳
  发布的微博文字内容必须经过URL编码,内容不得超过140个汉字。
  可见的
  错误的
  整数
  微博可见度,0:所有人可见,1:只有自己可见,2:密友可见,3:指定群组可见,默认为0。
  访问令牌
  错误的
  细绳
  OAuth授权方式为必填参数,其他授权方式不需要此参数,OAuth授权后获取。
  list_id
  错误的
  细绳
  微博的受保护传递指定了组ID,仅当visible 参数为3 时才生效,并且是必需的。
  纬度
  错误的
  漂浮
  纬度,有效范围:-90.0 to +90.0,+表示北纬,默认为0.0。
  长
  错误的
  漂浮
  经度,有效范围:-180.0 to +180.0,+表示东经,默认为0.0。
  注释
  错误的
  细绳
  元数据主要是为了方便第三方应用记录一些适合自己使用的信息。每个微博可以收录一个或多个元数据,必须以json字符串的形式提交,字符串长度不能超过512个字符。具体内容可定制。
  这几乎是我这两天所做的。为了测试这个同步,我变得可笑了。昨天刷了半天,呵呵。
  
  还有一个推特机器人,可以实现一些关键词自动回复、自动推文和常规推文,网址:点此。有英文和日文两种语言,看看应该能操作。
  接下来大家可以看看我同步的结果,我的推特,我的wordpress,我的新浪微博,我的腾讯微博,因为那个推特的图片都是链接的形式,所以对于有图片的推文,有同步时会报错:missing or missing。
  最后吐槽:尼玛的FGW!!!!!!!! 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(网络真是麻烦怎么办?指令是做什么的?)
  是不是因为我不是这个专业的?突然觉得上网真的很麻烦,尤其是要实现某个功能的编程,但是如果有时间,我会学习的。毕竟,我自己的程序可以让自己放心,没有广告,没有垃圾,并且知道哪个指令做了什么。
  我前天注册了一个IFTTT账号。我刚注册后没用过。我使用了其他人分享的食谱来构建自己的同步并实现 Twitter 的定时天气预报。后来发现自己想实现的某个功能很难找到,于是自己尝试了一下。搭建一个其实很简单,但是有一种人叫-新手,我也是新手,不过现在可以了。
  昨天突然想把推特和国内的微博同步,但是因为是国内的微博,IFTTT对自己的服务质量和国内的各种网络监控和防火墙造成了困难,最后想出了解决办法。: 搭建一个wordpress(有免费的,我最后给),用搭建好的wordpress作为转账,此时IFTTT支持twitter同步到wordpress(配方点这里,我设置了原创时间转账,所以评论的转推不会同步),Facebook和Tumblr也是一样的,下面是一样的。这只是完成了一个中介;
  下一步就是将wordpress中的博客内容(申请WP教程)同步到各个微博。这个过程可以在 wordpress 插件的帮助下实现。我总共测试了两个插件:
  一、wp-sns-share
  这个插件已经测试可以实现手动发博文,但是IFTTT自动发的文章不会自动转发,所以放弃了。如果手动更新,可以选择。
  二、新版微博通同步
  本插件经过测试,可以很好的实现以上功能,目测延时很短。设置时,您只需登录您注册的微博通账号即可。缺点是需要额外申请微博通账号并自动发布。's微博显示“微博通发布”,他对新浪微博的授权有时间限制:30天,其实还不错,一个月就新授权一次
  三.代码方法(20140320补充,来自+King Goo的博客)
  该方法需要使用新浪的接口,如下:
  1) 前往新浪微博开放平台创建站内应用。审核通过也可以,审核通过了就可以在微博下展示某博客的申请,比如某博客。你可以在谷歌搜索上创建就可以了,很简单(但是如果你没有通过审核想通过审核,我可以提供付费帮助嘎嘎~),创建应用后需要使用App Key以下申请的申请;
  2)编辑你的主题的functions.php文件并在最后添加以下代码
  
// 微博同步
function post_to_sina_weibo($post_ID) {
if( wp_is_post_revision($post_ID) ) return;
$get_post_info = get_post($post_ID);
$get_post_centent = get_post($post_ID)->post_content;
//去掉文章内的html编码的空格、换行、tab等符号(如果你文章的编码格式是这样子,可以将下面的"//"去掉即开启此功能)
//$get_post_centent = str_replace("\t", " ", str_replace("\n", " ", str_replace(" ", " ", $get_post_centent)));
$get_post_title = get_post($post_ID)->post_title;
if ( $get_post_info->post_status == 'publish' && $_POST['original_post_status'] != 'publish' ) {
$request = new WP_Http;
$status = '【' . strip_tags( $get_post_title ) . '】 ' . mb_strimwidth(strip_tags( apply_filters('the_content', $get_post_centent)),0, 132,'...') . ' 全文地址:' . get_permalink($post_ID) ;
$api_url = 'https://api.weibo.com/2/statuses/update.json';
$body = array( 'status' => $status, 'source'=>'4135063399');
$headers = array( 'Authorization' => 'Basic ' . '1fFjYc3uQHZpcF32fS5jb146MxFeY19DYF53aWfzNA==' );

$result = $request->post( $api_url , array( 'body' => $body, 'headers' => $headers ) );
}
}
add_action('publish_post', 'post_to_sina_weibo', 0);
  你可能应该知道这意味着什么
  如果(wp_is_post_revision($post_ID))返回;
  //如果是修改版 $get_post_info = get_post($post_ID);
  //获取文章信息
  $get_post_centent =get_post($post_ID)-&gt;post_content;
  //文章Content(不知道为什么使用了所有post_ID数据后获取不到内容,所以只在请求下)
  $get_post_title =get_post($post_ID)-&gt;post_title;
  //文章标题
  if ($get_post_info-&gt;post_status =='publish' &amp;&amp;$_POST['original_post_status'] !='publish') {
  //判断是发布的文章还是页面
  $status ='['。strip_tags( $get_post_title).'] '.mb_strimwidth(strip_tags( apply_filters('the_content',$get_post_centent)),0, 132,'...').' 全文地址:'.get_permalink($post_ID);
  //strip_tags( $get_post_title) 就是获取文章标题
  // mb_strimwidth(strip_tags( apply_filters('the_content',$get_post_centent)),0, 132,'...') 是截取的长度文章
  //get_permalink($post_ID) 文章 链接地址
  $api_url ='';
  //旧接口不能用了,必须用v2.0
  $body =array('status' =&gt; $status,'source'=&gt;'4135063399');
  // $status要发布的微博文字内容,内容不超过140个汉字
  // $source 的值是应用程序的AppKey
  $headers = array('Authorization' =&gt;'Basic '.'bate64 编码加密');
  //'bate64编码加密'的位置在这里,你可以自己加密你的账号和密码,格式为你的新浪微博登录账号:登录密码(例如:密码)
  //如果你不喜欢用这种方式 $headers = array('Authorization' =&gt;'Basic '.'Bate64 encoding encryption'),就用下面的方法代替,一样
  //您的新浪微博登录名
  $用户名 = ";
  //您的新浪微博登录密码
  $密码 = ”;
  $headers = array('Authorization' =&gt;'Basic '.base64_encode('$username:$password'));
  最后,在您发送博文后,一条消息将立即同步到微博
  微博接口请求参数:
  必需的
  类型和范围
  操作说明
  来源
  错误的
  细绳
  OAuth授权方式不需要该参数,其他授权方式为必选参数,值为应用的AppKey
  地位
  真的
  细绳
  发布的微博文字内容必须经过URL编码,内容不得超过140个汉字。
  可见的
  错误的
  整数
  微博可见度,0:所有人可见,1:只有自己可见,2:密友可见,3:指定群组可见,默认为0。
  访问令牌
  错误的
  细绳
  OAuth授权方式为必填参数,其他授权方式不需要此参数,OAuth授权后获取。
  list_id
  错误的
  细绳
  微博的受保护传递指定了组ID,仅当visible 参数为3 时才生效,并且是必需的。
  纬度
  错误的
  漂浮
  纬度,有效范围:-90.0 to +90.0,+表示北纬,默认为0.0。
  长
  错误的
  漂浮
  经度,有效范围:-180.0 to +180.0,+表示东经,默认为0.0。
  注释
  错误的
  细绳
  元数据主要是为了方便第三方应用记录一些适合自己使用的信息。每个微博可以收录一个或多个元数据,必须以json字符串的形式提交,字符串长度不能超过512个字符。具体内容可定制。
  这几乎是我这两天所做的。为了测试这个同步,我变得可笑了。昨天刷了半天,呵呵。
  
  还有一个推特机器人,可以实现一些关键词自动回复、自动推文和常规推文,网址:点此。有英文和日文两种语言,看看应该能操作。
  接下来大家可以看看我同步的结果,我的推特,我的wordpress,我的新浪微博,我的腾讯微博,因为那个推特的图片都是链接的形式,所以对于有图片的推文,有同步时会报错:missing or missing。
  最后吐槽:尼玛的FGW!!!!!!!!

使用新浪微博开放平台api同步微博内容至自己网站(FanlyWeibo新浪微博同步插件(WordPress插件安装教程)(组图))

网站优化优采云 发表了文章 • 0 个评论 • 68 次浏览 • 2022-01-06 08:09 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(FanlyWeibo新浪微博同步插件(WordPress插件安装教程)(组图))
  Fanly微博是紫帆为WordPress程序设计开发的新浪微博同步插件。可以在WordPress发布文章时自动将微博内容与图文同步,支持自定义文章类型,定时文章、微博延时同步等丰富功能。
  
  如果您购买了Fanly微博新浪微博同步插件,请务必仔细阅读以下所有操作和步骤,否则您可能无法正常使用该插件。
  Fanly微博插件安装
  1.购买并下载Fanly-Weibo.zip插件文件;
  2. 在线或FTP上传并安装Fanly微博插件并启用。(WordPress插件安装教程)
  Fanly微博插件配置
  1. 通过“WordPress后台-&gt;设置-&gt;粉丝微博”进入插件设置页面(如下图)。
  
  2. 插件首次安装或重置时会出现最简单的设置页面。只能输入微博APP Key和APP Secret才能进入插件完成页面。通过微博开放平台进入申请页面,如下图填写并保存相应信息。
  
  3. 设置并保存微博APP Key和APP Secret后,会显示完整的Fanly微博插件设置页面,如下图:
  
  4.微博令牌:点击“获取令牌”开始获取微博用户的授权令牌,所以如果你已经登录微博账号,可能会提示你授权,确认后继续,如果出现错误提示出现,请先查看本用户手册中的“Fanly微博常见问题”以查看解决方案。如果您想查看相关解决方案,请复制错误信息并通过Fanly微博插件页面留给我们。
  5.延迟时间:该功能是范力微博V3.3中推出的新功能。它利用WordPress的定时任务功能来延迟微博内容的同步。简单的说,当我们通过WordPress发布一篇文章文章时,我不希望它尽快同步到微博,所以通过设置延迟时间,可以实现微博内容同步后文章 发布后多少分钟。
  6. 支持类型:可能你的WordPress主题很强大,功能也很多,所以有很多自定义类型文章或者内容。这里的插件也是支持的,所以你需要检查一下你需要支持的类型,以保证插件在发布的时候可以正常使用。
  7.授权回调页面:该选项不可编辑,内容作为配置微博应用信息-&gt;高级信息-&gt;OAuth2.0授权设置-&gt;授权回调页面/取消授权回调页面设置, 授权回调页面和取消授权回调页面的填写方式相同。如下所示:
  
  8. 是否支持摘要:该功能支持WordPress 文章 内容摘要支持。如果设置了摘要内容,启用该功能会先同步摘要内容,否则插件会先提取文章 超过微博界面同步长度的片段内容会被自动拦截。
  9. 是否默认同步:勾选后会默认同步,也可以在发布时选择延迟/立即/取消同步文章!
  10. 保存更改。完成设置后,请记得保存更改以完成所有插件配置。
  微博应用设置
  配置插件信息后,还需要在微博应用中设置两个地方,一个是授权回调页面和去授权回调页面,一个是安全域名。
  授权回调页面/取消授权回调页面:微博开放平台-&gt;我的申请-&gt;具体申请页面-&gt;申请信息-&gt;高级信息-&gt;OAuth2.0 授权设置-&gt;授权回调页面/取消授权回调页面,这两个地址是通过插件配置页面中的“授权回调页面”获取的,两者地址相同。
  安全域名:微博开放平台-&gt;我的应用-&gt;具体应用页面-&gt;应用信息-&gt;基本信息,通过编辑添加当前插件网站所在的域名地址。
  Fanly微博常见问题
  Q:代币获取失败
  A:当您点击“获取Token”页面提示错误时,请确认并通过“应用信息-&gt;高级信息-&gt;OAuth2.0授权设置-&gt;授权回调”设置授权回调页面地址页面/取消授权回调页面”,详细设置请参考上面范力微博插件配置中的第7步。
  Q:微博无法同步的情况
  A:微博无法同步可能有以下三种情况:1.token过期,您可以再次尝试“获取Token”;2. 微博应用未设置“安全域名”,通过“微博开放平台”-&gt;我的应用-&gt;具体应用页面-&gt;应用信息-&gt;基本信息”编辑并添加安全域名; 3. 请确保微博申请已通过“审核”。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(FanlyWeibo新浪微博同步插件(WordPress插件安装教程)(组图))
  Fanly微博是紫帆为WordPress程序设计开发的新浪微博同步插件。可以在WordPress发布文章时自动将微博内容与图文同步,支持自定义文章类型,定时文章、微博延时同步等丰富功能。
  
  如果您购买了Fanly微博新浪微博同步插件,请务必仔细阅读以下所有操作和步骤,否则您可能无法正常使用该插件。
  Fanly微博插件安装
  1.购买并下载Fanly-Weibo.zip插件文件;
  2. 在线或FTP上传并安装Fanly微博插件并启用。(WordPress插件安装教程)
  Fanly微博插件配置
  1. 通过“WordPress后台-&gt;设置-&gt;粉丝微博”进入插件设置页面(如下图)。
  
  2. 插件首次安装或重置时会出现最简单的设置页面。只能输入微博APP Key和APP Secret才能进入插件完成页面。通过微博开放平台进入申请页面,如下图填写并保存相应信息。
  
  3. 设置并保存微博APP Key和APP Secret后,会显示完整的Fanly微博插件设置页面,如下图:
  
  4.微博令牌:点击“获取令牌”开始获取微博用户的授权令牌,所以如果你已经登录微博账号,可能会提示你授权,确认后继续,如果出现错误提示出现,请先查看本用户手册中的“Fanly微博常见问题”以查看解决方案。如果您想查看相关解决方案,请复制错误信息并通过Fanly微博插件页面留给我们。
  5.延迟时间:该功能是范力微博V3.3中推出的新功能。它利用WordPress的定时任务功能来延迟微博内容的同步。简单的说,当我们通过WordPress发布一篇文章文章时,我不希望它尽快同步到微博,所以通过设置延迟时间,可以实现微博内容同步后文章 发布后多少分钟。
  6. 支持类型:可能你的WordPress主题很强大,功能也很多,所以有很多自定义类型文章或者内容。这里的插件也是支持的,所以你需要检查一下你需要支持的类型,以保证插件在发布的时候可以正常使用。
  7.授权回调页面:该选项不可编辑,内容作为配置微博应用信息-&gt;高级信息-&gt;OAuth2.0授权设置-&gt;授权回调页面/取消授权回调页面设置, 授权回调页面和取消授权回调页面的填写方式相同。如下所示:
  
  8. 是否支持摘要:该功能支持WordPress 文章 内容摘要支持。如果设置了摘要内容,启用该功能会先同步摘要内容,否则插件会先提取文章 超过微博界面同步长度的片段内容会被自动拦截。
  9. 是否默认同步:勾选后会默认同步,也可以在发布时选择延迟/立即/取消同步文章!
  10. 保存更改。完成设置后,请记得保存更改以完成所有插件配置。
  微博应用设置
  配置插件信息后,还需要在微博应用中设置两个地方,一个是授权回调页面和去授权回调页面,一个是安全域名。
  授权回调页面/取消授权回调页面:微博开放平台-&gt;我的申请-&gt;具体申请页面-&gt;申请信息-&gt;高级信息-&gt;OAuth2.0 授权设置-&gt;授权回调页面/取消授权回调页面,这两个地址是通过插件配置页面中的“授权回调页面”获取的,两者地址相同。
  安全域名:微博开放平台-&gt;我的应用-&gt;具体应用页面-&gt;应用信息-&gt;基本信息,通过编辑添加当前插件网站所在的域名地址。
  Fanly微博常见问题
  Q:代币获取失败
  A:当您点击“获取Token”页面提示错误时,请确认并通过“应用信息-&gt;高级信息-&gt;OAuth2.0授权设置-&gt;授权回调”设置授权回调页面地址页面/取消授权回调页面”,详细设置请参考上面范力微博插件配置中的第7步。
  Q:微博无法同步的情况
  A:微博无法同步可能有以下三种情况:1.token过期,您可以再次尝试“获取Token”;2. 微博应用未设置“安全域名”,通过“微博开放平台”-&gt;我的应用-&gt;具体应用页面-&gt;应用信息-&gt;基本信息”编辑并添加安全域名; 3. 请确保微博申请已通过“审核”。

使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博内容至自己网站/小程序)

网站优化优采云 发表了文章 • 0 个评论 • 60 次浏览 • 2022-01-06 05:03 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博内容至自己网站/小程序)
  使用新浪微博开放平台api同步微博内容至自己网站/小程序使用乐讯api同步微博内容至自己网站/小程序后续再深入学习一下他们的开发,避免过度依赖服务器提供的数据接口(比如接入乐讯来同步微博内容,乐讯要求返回imgurl并把imgurl指向微博地址,才能获取微博数据),解决微博/小程序,比如需要将统计数据导出到txt保存使用lineapi同步微博内容至自己网站/小程序使用singaporeapi同步微博内容至自己网站/小程序使用信鸽api同步微博内容至自己网站/小程序解决小程序为复杂动态效果而无法获取数据(比如使用超链接,使用二维码)、个人博客中的数据无法同步至公共开放平台,同步服务器带宽/延迟等问题解决博客/博客,或其他平台markdown粘贴复制到wordpress中未能正确处理导入导出时的字符问题欢迎继续讨论。
  技术经验谈主要是es6ajax实现
  我们也在寻找有效的github同步,在微博中插入外链,实现博客的转发。现在可以关注github周报,每周都有实用技巧、github项目变化等。react中文社区不止于发布react相关信息,也包括大家经常关注的react和node,webpack,leancloud,redis,kibana,openstack等等。
  还有除了知道要发布一个react项目之外,对想要了解reactdevtools上面不断更新的新功能,也是很关注的。没有任何github要求,只要你的博客用户中有使用github的,就有机会以。阿里风投系生态圈wordpress作为谷歌公司的产品,受到了很多用户的欢迎。wordpress对于html5和webpack等web基础知识和web开发能力是需要一定的了解的。
  wordpress想要更好的发展,解决文章和静态页面同步问题,最好能给用户提供api。let'sencrypt大家都是知道的,postgresql项目的原始版本是基于let'sencrypt,其开发思路基于这个项目,现在不止想要解决权限问题,更希望能找到更多能够直接解决复杂权限的api。quip最近quip处于准备上线状态,希望能尽快把quip升级到postgresql3.4。你可以去官网看看,最后放一个api网址/~gohlke/pythonlibs/#python33。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博内容至自己网站/小程序)
  使用新浪微博开放平台api同步微博内容至自己网站/小程序使用乐讯api同步微博内容至自己网站/小程序后续再深入学习一下他们的开发,避免过度依赖服务器提供的数据接口(比如接入乐讯来同步微博内容,乐讯要求返回imgurl并把imgurl指向微博地址,才能获取微博数据),解决微博/小程序,比如需要将统计数据导出到txt保存使用lineapi同步微博内容至自己网站/小程序使用singaporeapi同步微博内容至自己网站/小程序使用信鸽api同步微博内容至自己网站/小程序解决小程序为复杂动态效果而无法获取数据(比如使用超链接,使用二维码)、个人博客中的数据无法同步至公共开放平台,同步服务器带宽/延迟等问题解决博客/博客,或其他平台markdown粘贴复制到wordpress中未能正确处理导入导出时的字符问题欢迎继续讨论。
  技术经验谈主要是es6ajax实现
  我们也在寻找有效的github同步,在微博中插入外链,实现博客的转发。现在可以关注github周报,每周都有实用技巧、github项目变化等。react中文社区不止于发布react相关信息,也包括大家经常关注的react和node,webpack,leancloud,redis,kibana,openstack等等。
  还有除了知道要发布一个react项目之外,对想要了解reactdevtools上面不断更新的新功能,也是很关注的。没有任何github要求,只要你的博客用户中有使用github的,就有机会以。阿里风投系生态圈wordpress作为谷歌公司的产品,受到了很多用户的欢迎。wordpress对于html5和webpack等web基础知识和web开发能力是需要一定的了解的。
  wordpress想要更好的发展,解决文章和静态页面同步问题,最好能给用户提供api。let'sencrypt大家都是知道的,postgresql项目的原始版本是基于let'sencrypt,其开发思路基于这个项目,现在不止想要解决权限问题,更希望能找到更多能够直接解决复杂权限的api。quip最近quip处于准备上线状态,希望能尽快把quip升级到postgresql3.4。你可以去官网看看,最后放一个api网址/~gohlke/pythonlibs/#python33。

使用新浪微博开放平台api同步微博内容至自己网站(极客公园观察家@NovaDNG发现新浪微博API更改内容原文)

网站优化优采云 发表了文章 • 0 个评论 • 42 次浏览 • 2022-01-05 07:00 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(极客公园观察家@NovaDNG发现新浪微博API更改内容原文)
  【核心提示】新浪微博悄悄改变了API,调整了获取微博内容和用户关系的界面返回结果。这对目前的第三方微博客户端有什么影响?
  编者按:极客公园观察者@NovaDNG 发现新浪微博在本周二(6月18日)悄悄改变了其API,并调整了获取微博内容和用户关系的界面返回结果。一方面,极客公园内部讨论了这一变化可能带来的影响。另一方面,采访了多位知名第三方微博客户端开发者,听取他们的意见。当然,我们也欢迎更多的人加入讨论。
  
  原创演示文稿
  6月18日新浪微博API变化原文引用如下(点此查看原文):
  当前授权的应用只能读取授权应用的当前用户的微博,无法获取其他用户的微博。具体界面如下:
  获取当前登录用户发布的微博消息列表(2/statuses/user_timeline)
  获取当前登录用户发布的微博消息ID列表(2/statuses/user_timeline/ids)
  当前授权的应用程序只能读取当前授权应用程序的用户的关系,不能读取其他用户的关系。具体界面如下:
  获取用户的关注列表(2/riendships/friends)
  获取普通关注者列表(2/friendships/friends/in_common)
  获取双向观察名单(2/友谊/朋友/双边)
  获取双向关注UID列表(2/friendships/friends/bilateral/ids)
  获取用户关注对象的UID列表(2/friendships/friends/ids)
  获取用户的粉丝列表(2/friendships/followers)
  获取用户的粉丝UID列表(2/friendships/followers/ids)
  获取用户优质粉丝列表(2/好友/关注/活跃)
  初步解释
  在仔细研究了这一变化后,我们内部的讨论得出了两种不同的观点:
  意见1:这些变化生效后,现有的第三方客户端将失去:
  阅读用户的主要时间线、评论和转发功能(一般第三方客户端的三大功能)
  查看其他用户的微博内容
  查看其他用户的关注和粉丝功能
  微博搜索、用户搜索等相关功能
  总之,生效后,第三方客户端基本失效,用户只会看到:
  微博
  自己的追随者和粉丝/活跃粉丝
  我自己和另一个用户的共同关心
  观点2:这只是新浪又一次强迫所有用户重新授权他们的第三方客户端:
  从原文的写法来看,这些改动都是针对“授权客户端”的,所以这次改动的效果就是取消了授权客户端的主要功能。当用户重新授权时,可以恢复原来的功能。设计这个变化的原因是:
  这是一个强制所有用户重新授权第三方客户端的过程
  提高数据爬取难度,针对已有的微博爬取数据行为
  之后,微博可能会为商业用户提供专门的数据分析接口和服务,就像现在的推特一样
  各种意见
  安卓平台第三方微博客户端第四维度开发者@进击的心头反对上述第二种解释。他认为更新后的API是同一个地址,也就是说,原来的API是什么权限,重新授权后或者是什么权限。旧界面和新界面没有区别,未来将不再允许第三方应用访问其他用户的微博列表。更新生效后,第三方应用将无法扫描微博列表,并出现“当前应用无权限”等错误提示。
  随后我们采访了安卓平台另一知名微博客户端Fuubo的开发者@RefacTech碎星。他已经在微博上表达了对此次API变更的担忧。在他看来,与新浪微博有官方合作关系的第三方应用,如Weico、Weige、ZAKER(该应用内置微博阅读功能,也可以视为第三方客户端),可能不会受到太大影响。,但其他一些自主开发的客户端也难逃他们的命运。不过,他也指出,即使新浪微博收紧API,第三方应用仍能以微博内容聚合阅读的形式继续存在,不会完全消亡。
  昨天下午(6月23日),新浪微博开放平台@微博开平台的验证账号给@RefacTech碎星发消息,称此次升级对第三方微博客户端没有影响。
  
  我们还联系了iOS平台微博客户端Weige的开发者,但截至发稿,他们并未对此发表评论。
  主要问题
  综合整个讨论过程和讨论内容,我们发现主要分歧点在于原创API更新日志中的“当前已授权应用”,由此提出以下问题:
  这是针对“已授权应用程序”还是针对所有第三方应用程序(无论它们是否经过用户重新授权)的更改?
  如果是第三方应用,会不会影响商业支付接口的第三方客户端?
  这种变化背后的考虑是什么? 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(极客公园观察家@NovaDNG发现新浪微博API更改内容原文)
  【核心提示】新浪微博悄悄改变了API,调整了获取微博内容和用户关系的界面返回结果。这对目前的第三方微博客户端有什么影响?
  编者按:极客公园观察者@NovaDNG 发现新浪微博在本周二(6月18日)悄悄改变了其API,并调整了获取微博内容和用户关系的界面返回结果。一方面,极客公园内部讨论了这一变化可能带来的影响。另一方面,采访了多位知名第三方微博客户端开发者,听取他们的意见。当然,我们也欢迎更多的人加入讨论。
  
  原创演示文稿
  6月18日新浪微博API变化原文引用如下(点此查看原文):
  当前授权的应用只能读取授权应用的当前用户的微博,无法获取其他用户的微博。具体界面如下:
  获取当前登录用户发布的微博消息列表(2/statuses/user_timeline)
  获取当前登录用户发布的微博消息ID列表(2/statuses/user_timeline/ids)
  当前授权的应用程序只能读取当前授权应用程序的用户的关系,不能读取其他用户的关系。具体界面如下:
  获取用户的关注列表(2/riendships/friends)
  获取普通关注者列表(2/friendships/friends/in_common)
  获取双向观察名单(2/友谊/朋友/双边)
  获取双向关注UID列表(2/friendships/friends/bilateral/ids)
  获取用户关注对象的UID列表(2/friendships/friends/ids)
  获取用户的粉丝列表(2/friendships/followers)
  获取用户的粉丝UID列表(2/friendships/followers/ids)
  获取用户优质粉丝列表(2/好友/关注/活跃)
  初步解释
  在仔细研究了这一变化后,我们内部的讨论得出了两种不同的观点:
  意见1:这些变化生效后,现有的第三方客户端将失去:
  阅读用户的主要时间线、评论和转发功能(一般第三方客户端的三大功能)
  查看其他用户的微博内容
  查看其他用户的关注和粉丝功能
  微博搜索、用户搜索等相关功能
  总之,生效后,第三方客户端基本失效,用户只会看到:
  微博
  自己的追随者和粉丝/活跃粉丝
  我自己和另一个用户的共同关心
  观点2:这只是新浪又一次强迫所有用户重新授权他们的第三方客户端:
  从原文的写法来看,这些改动都是针对“授权客户端”的,所以这次改动的效果就是取消了授权客户端的主要功能。当用户重新授权时,可以恢复原来的功能。设计这个变化的原因是:
  这是一个强制所有用户重新授权第三方客户端的过程
  提高数据爬取难度,针对已有的微博爬取数据行为
  之后,微博可能会为商业用户提供专门的数据分析接口和服务,就像现在的推特一样
  各种意见
  安卓平台第三方微博客户端第四维度开发者@进击的心头反对上述第二种解释。他认为更新后的API是同一个地址,也就是说,原来的API是什么权限,重新授权后或者是什么权限。旧界面和新界面没有区别,未来将不再允许第三方应用访问其他用户的微博列表。更新生效后,第三方应用将无法扫描微博列表,并出现“当前应用无权限”等错误提示。
  随后我们采访了安卓平台另一知名微博客户端Fuubo的开发者@RefacTech碎星。他已经在微博上表达了对此次API变更的担忧。在他看来,与新浪微博有官方合作关系的第三方应用,如Weico、Weige、ZAKER(该应用内置微博阅读功能,也可以视为第三方客户端),可能不会受到太大影响。,但其他一些自主开发的客户端也难逃他们的命运。不过,他也指出,即使新浪微博收紧API,第三方应用仍能以微博内容聚合阅读的形式继续存在,不会完全消亡。
  昨天下午(6月23日),新浪微博开放平台@微博开平台的验证账号给@RefacTech碎星发消息,称此次升级对第三方微博客户端没有影响。
  
  我们还联系了iOS平台微博客户端Weige的开发者,但截至发稿,他们并未对此发表评论。
  主要问题
  综合整个讨论过程和讨论内容,我们发现主要分歧点在于原创API更新日志中的“当前已授权应用”,由此提出以下问题:
  这是针对“已授权应用程序”还是针对所有第三方应用程序(无论它们是否经过用户重新授权)的更改?
  如果是第三方应用,会不会影响商业支付接口的第三方客户端?
  这种变化背后的考虑是什么?

使用新浪微博开放平台api同步微博内容至自己网站(这里有新鲜出炉的精品教程,程序狗速度看过来!)

网站优化优采云 发表了文章 • 0 个评论 • 59 次浏览 • 2022-01-04 08:07 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(这里有新鲜出炉的精品教程,程序狗速度看过来!)
  这里是新鲜出品的优质教程,看程序狗的速度!
  新浪微博 新浪微博是新浪网为提供微博服务而推出的一种推特网站。用户可以通过网页、WAP页面、手机客户端、手机短信、彩信发布消息或上传图片。新浪可以将微博理解为“微博”或“一句话博客”。
  本文讲解了新浪微博API开发介绍(PHP基础)的用户授权,有兴趣的同学可以参考。
  在开发和学习的过程中,感觉虽然不是太难,但还是有一些问题需要大家注意。今天在开发学习过程中,简单的用PHP进行了新浪微博整理讲解API开发的内容
  现在玩微博的人越来越多,微博上的第三方应用开​​发也越来越多。无意中开始接触新浪微博API开发,新浪微博API开发资源更多时候,新浪微博为开发者提供了一个平台。网站为: 收录新浪微博开发的综合信息,包括开发者的使用和介绍、各种语言的API功能介绍文档、SDK等多种资料。
  在开发和学习的过程中,感觉虽然不是太难,但还是有一些问题需要大家注意。今天在开发学习的过程中,简单的用PHP进行了新浪微博对API开发的内容进行整理和讲解,
  新浪微博API开发前的准备工作
  首先到新浪微博开放平台下载基于PHP的SDK开发包,下载地址为:
  下载完成后,放到自己的开发环境中解压。演示程序也包括在内。可以参考其示例程序进行编写。
  新浪微博API开发最重要的用户授权流程
  其实开发过程中的很多问题都集中在用户授权阶段。我开发的第三方应用使用的是OAuth授权。新浪微博开放平台的OAuth授权流程非常清晰完整。介绍,大家可以去看看,我会从实例开发的角度介绍和讲解。
  1.先获取未授权的Request Token
  $o = new WeiboOAuth(WB_AKEY, WB_SKEY);
  $keys = $o->getRequestToken();
  //echo($keys['oauth_token'].':'.$keys['oauth_token_secret']);
  我们需要在新浪微博开放平台注册一个账号,或者直接用我们的新浪微博账号登录,进入我的应用,然后按照提示创建我们自己的第三方应用。创建完成后,我们可以得到两个授权的App Key和App Secret值,这两个值是我们应用开发的关键。
  获得授权值后,我们可以通过上面的代码获取未授权的Request Token值,该值会保存在$key数组变量中。
  2.然后请求用户授权令牌
  $_SESSION['keys'] = $keys;
  aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false,'#39;);
  获取到未授权Request Token值后,我们可以使用上面的代码准备去新浪微博授权页面进行授权。 $aurl 是授权链接页面。拿到$aurl后,我们可以使用header()直接跳转到授权页面,然后用户输入新浪微博账号和密码进行授权。授权完成后会自动跳转回你最后一个参数设置的回调页面:这个链接可以设置为上一个页面,授权完成后会自动再跳转回来。
  需要注意的是,需要设置session key的值。下面获得的授权访问令牌中需要它。很多朋友可能会参考开放平台上的说明进行授权,但是发现总是报错。这通常是问题所在。您尚未设置会话的键值。当然,下面无法获取Access Token的值。这个一定要记住。
  3.用户最后授权的Access Token
  $o = new WeiboOAuth( WB_AKEY ,
  WB_SKEY,
  $_SESSION['keys']['oauth_token'] ,
  $_SESSION['keys']['oauth_token_secret'] );
  $last_key = $o->getAccessToken( $_REQUEST['oauth_verifier']) ;
  echo($last_key['oauth_token']);
  以上代码最终获得了用户授权的Access Token。有两个值,它们存储在 $last_key 数组变量中。我们也可以看到最后两个参数是我们之前设置的session值。至此,基本完成。这是一个完整的新浪微博用户授权流程。
  授权完成后工作
  授权完成后,我们就可以开始调用新浪微博提供的各种API函数接口进行实际应用开发了。这里我简单介绍一下获取最新微博记录的界面。其他类似。
  获取新浪微博最新信息的API接口函数为:public_timeline(),示例代码如下:
  //获取前20条最新更新的公众微博
  $c = new WeiboClient( WB_AKEY ,
  WB_SKEY,
  $oauth_token ,
  $oauth_token_secret );
  $msg = $c->public_timeline();
  if ($msg === false || $msg === null){
  echo "发生错误";
  返回假;
  }
  if (isset($msg['error_code']) && isset($msg['error'])){
  echo ('Error_code:'.$msg['error_code'].'; Error:'.$msg['error']);
  返回假;
  }
  print_r($msg);
  通常我们拿到用户授权的access token值后,会保存在我们的user表中,对应我们应用中的账号。之后,我们就不用每次都调用每个新浪微博API接口了。我一直都在考认证。
  上面的代码很简单,实例化WeiboClient对象,然后直接调用接口函数public_timeline获取返回的信息,如果没有报错。通常新浪微博api接口返回的数据格式一般是Json格式或者xml格式,而我们这里是用php开发的,那么使用Json格式数据有先天优势,如果返回Json格式数据,直接使用php即可。函数json_decode()可以转换成PHP常用的数组格式。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(这里有新鲜出炉的精品教程,程序狗速度看过来!)
  这里是新鲜出品的优质教程,看程序狗的速度!
  新浪微博 新浪微博是新浪网为提供微博服务而推出的一种推特网站。用户可以通过网页、WAP页面、手机客户端、手机短信、彩信发布消息或上传图片。新浪可以将微博理解为“微博”或“一句话博客”。
  本文讲解了新浪微博API开发介绍(PHP基础)的用户授权,有兴趣的同学可以参考。
  在开发和学习的过程中,感觉虽然不是太难,但还是有一些问题需要大家注意。今天在开发学习过程中,简单的用PHP进行了新浪微博整理讲解API开发的内容
  现在玩微博的人越来越多,微博上的第三方应用开​​发也越来越多。无意中开始接触新浪微博API开发,新浪微博API开发资源更多时候,新浪微博为开发者提供了一个平台。网站为: 收录新浪微博开发的综合信息,包括开发者的使用和介绍、各种语言的API功能介绍文档、SDK等多种资料。
  在开发和学习的过程中,感觉虽然不是太难,但还是有一些问题需要大家注意。今天在开发学习的过程中,简单的用PHP进行了新浪微博对API开发的内容进行整理和讲解,
  新浪微博API开发前的准备工作
  首先到新浪微博开放平台下载基于PHP的SDK开发包,下载地址为:
  下载完成后,放到自己的开发环境中解压。演示程序也包括在内。可以参考其示例程序进行编写。
  新浪微博API开发最重要的用户授权流程
  其实开发过程中的很多问题都集中在用户授权阶段。我开发的第三方应用使用的是OAuth授权。新浪微博开放平台的OAuth授权流程非常清晰完整。介绍,大家可以去看看,我会从实例开发的角度介绍和讲解。
  1.先获取未授权的Request Token
  $o = new WeiboOAuth(WB_AKEY, WB_SKEY);
  $keys = $o->getRequestToken();
  //echo($keys['oauth_token'].':'.$keys['oauth_token_secret']);
  我们需要在新浪微博开放平台注册一个账号,或者直接用我们的新浪微博账号登录,进入我的应用,然后按照提示创建我们自己的第三方应用。创建完成后,我们可以得到两个授权的App Key和App Secret值,这两个值是我们应用开发的关键。
  获得授权值后,我们可以通过上面的代码获取未授权的Request Token值,该值会保存在$key数组变量中。
  2.然后请求用户授权令牌
  $_SESSION['keys'] = $keys;
  aurl = $o->getAuthorizeURL( $keys['oauth_token'] ,false,'#39;);
  获取到未授权Request Token值后,我们可以使用上面的代码准备去新浪微博授权页面进行授权。 $aurl 是授权链接页面。拿到$aurl后,我们可以使用header()直接跳转到授权页面,然后用户输入新浪微博账号和密码进行授权。授权完成后会自动跳转回你最后一个参数设置的回调页面:这个链接可以设置为上一个页面,授权完成后会自动再跳转回来。
  需要注意的是,需要设置session key的值。下面获得的授权访问令牌中需要它。很多朋友可能会参考开放平台上的说明进行授权,但是发现总是报错。这通常是问题所在。您尚未设置会话的键值。当然,下面无法获取Access Token的值。这个一定要记住。
  3.用户最后授权的Access Token
  $o = new WeiboOAuth( WB_AKEY ,
  WB_SKEY,
  $_SESSION['keys']['oauth_token'] ,
  $_SESSION['keys']['oauth_token_secret'] );
  $last_key = $o->getAccessToken( $_REQUEST['oauth_verifier']) ;
  echo($last_key['oauth_token']);
  以上代码最终获得了用户授权的Access Token。有两个值,它们存储在 $last_key 数组变量中。我们也可以看到最后两个参数是我们之前设置的session值。至此,基本完成。这是一个完整的新浪微博用户授权流程。
  授权完成后工作
  授权完成后,我们就可以开始调用新浪微博提供的各种API函数接口进行实际应用开发了。这里我简单介绍一下获取最新微博记录的界面。其他类似。
  获取新浪微博最新信息的API接口函数为:public_timeline(),示例代码如下:
  //获取前20条最新更新的公众微博
  $c = new WeiboClient( WB_AKEY ,
  WB_SKEY,
  $oauth_token ,
  $oauth_token_secret );
  $msg = $c->public_timeline();
  if ($msg === false || $msg === null){
  echo "发生错误";
  返回假;
  }
  if (isset($msg['error_code']) && isset($msg['error'])){
  echo ('Error_code:'.$msg['error_code'].'; Error:'.$msg['error']);
  返回假;
  }
  print_r($msg);
  通常我们拿到用户授权的access token值后,会保存在我们的user表中,对应我们应用中的账号。之后,我们就不用每次都调用每个新浪微博API接口了。我一直都在考认证。
  上面的代码很简单,实例化WeiboClient对象,然后直接调用接口函数public_timeline获取返回的信息,如果没有报错。通常新浪微博api接口返回的数据格式一般是Json格式或者xml格式,而我们这里是用php开发的,那么使用Json格式数据有先天优势,如果返回Json格式数据,直接使用php即可。函数json_decode()可以转换成PHP常用的数组格式。

使用新浪微博开放平台api同步微博内容至自己网站(怎么使用新浪微博JavaSDK创建应用程序,主要用于应用程序密钥和秘密)

网站优化优采云 发表了文章 • 0 个评论 • 47 次浏览 • 2022-01-04 08:06 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(怎么使用新浪微博JavaSDK创建应用程序,主要用于应用程序密钥和秘密)
  但是,新浪提供的API比较繁琐,尤其是Java。三个版本的JavaAPI将你的蛋蛋打到极致:AndroidSDK真是逆天。由于新浪微博把V1改成了V2,就不能用了,所以只能用剩下的两个了。但是当你下载一个非常困难的版本时,你只能得到代码,而不能得到accesstoken。打开源码,点击里面的mainactivity,发现要切鸡了:别着急,新浪已经提供了把代码改成token的方法,不过不是在AndroidSDK中,而是在weibo4j中:。
  微博wp7平台SDK使用说明:如何使用新浪微博Java SDK
  创建应用程序,主要用于应用程序密钥和秘密密钥。请参考官方文档:2、下载新浪微薄的SDK,本文使用java。请先填写3、配置:client_。在配置中。属性
  为什么运行新浪微博微博SDKDemo报错
  谁知道呢。 eclipsesdk使用说明。
  有照片吗? mt4平台使用说明。
  如何使用新浪微博开放平台的JavaSDK?
  用鸡下蛋,提高声誉,最终获利。有钱了,去逛菜市场,然后就成为菜市场的主人了!你明白吗? .
  微博wp7平台SDK使用说明:如何使用腾讯微博开放平台的java SDK
  1、进入开放平台首页; mt5平台使用说明。
  2、 仔细阅读官方公开的 API 文档。
  听起来很糟糕,但你只能这样做。
  PS:特别提醒,一定要阅读官方文档,不要在网上搜索那些乱七八糟的帖子。他们中的许多人都是骗子。新浪微博开放平台的JavaSDK是否使用了在自动关注的基础上可以使用的quicksdk插件平台?
  这完全有可能
  如何使用新浪微博SDK
  1 首先下载新浪微博SDK包
  在新浪微博申请开发者账号,在开发过程中使用开发者的秘钥和秘钥SDK平台。
  我申请中的具体申请方法,过程很简单,不再赘述
  打开下载的sdk包demo工程,将demo工程中新浪微博SDK下的所有文件复制到自己的工程中
  很多朋友都犯了这个错误。根据官方文档,将整个src包加载到程序中是一个奇怪的错误
  这样的话,一些原来的程序会和文件名冲突,找不到具体的文件,很郁闷
  将demo中viewdidload函数的初始化数据复制到自己的程序中并加载。然后在函数中,加载自己的处理,如果想直接分享就调用
  -(void): (NS String*) text image: (UIImage*) 图像,发送信息,图像信息可以直接添加到图像数据中。 . 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(怎么使用新浪微博JavaSDK创建应用程序,主要用于应用程序密钥和秘密)
  但是,新浪提供的API比较繁琐,尤其是Java。三个版本的JavaAPI将你的蛋蛋打到极致:AndroidSDK真是逆天。由于新浪微博把V1改成了V2,就不能用了,所以只能用剩下的两个了。但是当你下载一个非常困难的版本时,你只能得到代码,而不能得到accesstoken。打开源码,点击里面的mainactivity,发现要切鸡了:别着急,新浪已经提供了把代码改成token的方法,不过不是在AndroidSDK中,而是在weibo4j中:。
  微博wp7平台SDK使用说明:如何使用新浪微博Java SDK
  创建应用程序,主要用于应用程序密钥和秘密密钥。请参考官方文档:2、下载新浪微薄的SDK,本文使用java。请先填写3、配置:client_。在配置中。属性
  为什么运行新浪微博微博SDKDemo报错
  谁知道呢。 eclipsesdk使用说明。
  有照片吗? mt4平台使用说明。
  如何使用新浪微博开放平台的JavaSDK?
  用鸡下蛋,提高声誉,最终获利。有钱了,去逛菜市场,然后就成为菜市场的主人了!你明白吗? .
  微博wp7平台SDK使用说明:如何使用腾讯微博开放平台的java SDK
  1、进入开放平台首页; mt5平台使用说明。
  2、 仔细阅读官方公开的 API 文档。
  听起来很糟糕,但你只能这样做。
  PS:特别提醒,一定要阅读官方文档,不要在网上搜索那些乱七八糟的帖子。他们中的许多人都是骗子。新浪微博开放平台的JavaSDK是否使用了在自动关注的基础上可以使用的quicksdk插件平台?
  这完全有可能
  如何使用新浪微博SDK
  1 首先下载新浪微博SDK包
  在新浪微博申请开发者账号,在开发过程中使用开发者的秘钥和秘钥SDK平台。
  我申请中的具体申请方法,过程很简单,不再赘述
  打开下载的sdk包demo工程,将demo工程中新浪微博SDK下的所有文件复制到自己的工程中
  很多朋友都犯了这个错误。根据官方文档,将整个src包加载到程序中是一个奇怪的错误
  这样的话,一些原来的程序会和文件名冲突,找不到具体的文件,很郁闷
  将demo中viewdidload函数的初始化数据复制到自己的程序中并加载。然后在函数中,加载自己的处理,如果想直接分享就调用
  -(void): (NS String*) text image: (UIImage*) 图像,发送信息,图像信息可以直接添加到图像数据中。 .

使用新浪微博开放平台api同步微博内容至自己网站(OAuth2.0协议授权流程查看/access_token获取)

网站优化优采云 发表了文章 • 0 个评论 • 69 次浏览 • 2022-01-04 00:01 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(OAuth2.0协议授权流程查看/access_token获取)
  一、OAuth2.0概览
  大多数API访问,如发布微博、获取私信、关注等,都需要用户身份。目前新浪微博开放平台用户身份认证包括OAuth2.0和Basic Auth(仅用于应用开发Debugging接口),新版接口也仅支持这两种方式。 OAuth2.0比1.0的整个授权验证过程更简单、更安全,也是未来最重要的用户认证和授权方式。 OAuth2.0协议授权流程见OAuth2.0授权流程,其中Client指第三方应用,Resource Owner指用户,Authorization Server是我们的授权服务器,Resource Server是API 服务器。
  参考链接:以及新浪微博开放平台和新浪微博CodeProject开源项目
  开发者可以先浏览OAuth2.0的接口文档,熟悉OAuth2接口和参数的含义,然后根据应用场景讲解如何使用OAuth2.0 .
  OAuth2 接口文档
  接口说明
  OAuth2/授权
  请求用户授权令牌
  OAuth2/access_token
  获取授权访问令牌
  OAuth2/get_token_info
  授权信息查询界面
  OAuth2/revokeoauth2
  授权恢复接口
  OAuth2/get_oauth2_token
  OAuth1.0的Access Token替换为OAuth2.0的Access Token
  二、OAuth2.0 新浪授权页面
  1、 首先需要获取appKey和appSecret。这种获取方式可以在新浪微博新手指南中一步步获取。这里的回调地址使用默认的:网站访问方式。以下是C#示例源代码(控制台应用程序):
  01.using System;
02.using System.Collections.Generic;
03.using System.Linq;
04.using System.Text;
05.using NetDimension.Weibo;
06.using System.Net;
07.
08.namespace SinaWeiboTestApp
09.{
10. class Program
11. {
12.
13. static void Main(string[] args)
14. {
15.
16. string appkey = "124543453288";
17. string appsecret = "3a456c5332fd2cb1178338fccb9fa51c";
18. //string callBack = "http://127.0.0.1:3170/WebSite2/Default.aspx";
19. string callBack = "https://api.weibo.com/oauth2/default.html";
20. var oauth = new NetDimension.Weibo.OAuth(appkey,appsecret,callBack);
21.
22. ////模拟登录
23. //string username = "xxxxxxxx@163.com";
24. //string password = "xxxxxxx";
25. //oauth.ClientLogin(username, password); //模拟登录下,没啥好说的,你也可以改成标准登录。
26.
27. //标准登录
28. var authUrl = oauth.GetAuthorizeURL();
29. //string redirectUrl;
30. //HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(authUrl);
31. //request.Referer = authUrl;
32. //request.AllowAutoRedirect = false;
33. //using (WebResponse response = request.GetResponse())
34. //{
35. // redirectUrl = response.Headers["Location"];
36. // redirectUrl = response.ResponseUri.AbsolutePath;
37. //}
38. System.Diagnostics.Process.Start(authUrl);
39. Console.WriteLine("填写浏览器地址中的Code参数:");
40. var code = Console.ReadLine();
41. var accessToken = oauth.GetAccessTokenByAuthorizationCode(code);
42. if (!string.IsNullOrEmpty(accessToken.Token))
43. {
44. var sina = new NetDimension.Weibo.Client(oauth);
45. var uid = sina.API.Dynamic.Account.GetUID(); //调用API中获取UID的方法
46. Console.WriteLine(uid);
47. }
48.
49. var Sina = new Client(oauth);
50. Console.WriteLine("开始发送异步请求...");
51.
52. //例子1:异步获取用户的ID
53. //demo的运行环境是.net 4.0,下面展示的这种方法在2.0及以上版本环境下有效,3.0以上可以用lambda表达式来简化delegate的蛋疼写法,请看下面的例子。
54. Sina.AsyncInvoke(
55. //第一个代理中编写调用API接口的相关逻辑
56. delegate()
57. {
58. Console.WriteLine("发送请求来获得用户ID...");
59. System.Threading.Thread.Sleep(8000); //等待8秒
60. return Sina.API.Entity.Account.GetUID();
61. },
62. //第二个代理为回调函数,异步完成后将自动调用这个函数来处理结果。
63. delegate(AsyncCallback callback)
64. {
65. if (callback.IsSuccess)
66. {
67. Console.WriteLine("获取用户ID成功,ID:{0}", callback.Data);
68. }
69. else
70. {
71. Console.WriteLine("获取用户ID失败,异常:{0}", callback.Error);
72. }
73. }
74. );
75.
76. //列子2:获取公共微博列表
77. //2.0以上用lambda来写,方便不是一点点
78. Sina.AsyncInvoke(() =>
79. {
80. //获取微博,接口调用,返回值是个NetDimension.Weibo.Entities.status.Collection,所以泛型T为NetDimension.Weibo.Entities.status.Collection
81. Console.WriteLine("发送请求来获得公共微博列表...");
82. return Sina.API.Entity.Statuses.PublicTimeline();
83. //return Sina.API.Entity.Statuses.RepostTimeline;
84. }, (callback) =>
85. {
86. if (callback.IsSuccess)
87. {
88. //异步完成后处理结果,result就是返回的结果,类型就是泛型所指定的NetDimension.Weibo.Entities.status.Collection
89. Console.WriteLine("获得公共微博列表成功,现在公共频道发微博的人都是他们:");
90. foreach (var status in callback.Data.Statuses)
91. {
92. if (status.User != null)
93. Console.WriteLine(status.User.ScreenName + " ");//打印公共微博发起人的姓名
94. }
95. Console.WriteLine();
96. }
97. else
98. {
99. Console.WriteLine("获取用户ID失败,异常:{0}", callback.Error);
100. }
101.
102. });
103.
104.
105. Console.WriteLine("已发送所有异步请求。等待异步执行完成...");
106.
107. Console.ReadKey(); //阻塞,等待异步调用执行完成
108.
109. }
110.
111. }
112.}
  MVC 中的代码:
  using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Myself.Models;
using Myself.Code;
using BLL;
using Lib;
using SpeexToWavToMp3;
using System.Web.Http.Filters;
using Models;
using Webdiyer.WebControls.Mvc;
using System.IO;
namespace Myself.Controllers
{
public class MySelfController : Controller
{
public ActionResult LoginSina()
{
var oauth = new NetDimension.Weibo.OAuth(appKey,appSecret,Url.Action("LoginSinaResult", "MySelf", null, "http"));
//第一步获取新浪授权页面的地址
var oauthUrl = oauth.GetAuthorizeURL();
return Redirect(oauthUrl);
}
public ActionResult LoginSinaResult(string code)
{
var oauth = new NetDimension.Weibo.OAuth(appKey, appSecret, Url.Action("LoginSinaResult", "MySelf", null, "http"));
var oauthToken = oauth.GetAccessTokenByAuthorizationCode(code);
var model = UserHelper.GetAuthorizeInfo(oauthToken.UID, 1);
if (model != null)
{
if (LoginHelper.UserLogin(model.UserID, 1, oauthToken.UID, Request.UserAgent, Request.UserHostAddress, "1", "web"))
{
return RedirectToAction("Index", "Home");
}
else
{
return Content("登录失败");
}
}
return Content("您尚未注册");
}
}
}
  要运行上述程序,需要替换Appkey和Appsecret。
  2、授权页面
  以下是提示微博登录的界面,登录后第三方网站授权访问您在新浪微博账号上的资源
  将提供。
  
  3、授权访问页面
  4、新浪官方网站提供API测试工具来测试客户端构造的参数是否正确
  
  5、Oauth2.0 操作流程图
  
  第一步:首先直接跳转到用户授权地址,即图标Request User Url,提示用户登录,授权相关资源获取唯一Auth code。这里注意代码只有10分钟的有效时间出于安全考虑,相比OAuth1.0,它节省了一步获取临时token,而且有效期也得到了控制,比1.0简单多了,安全多了@1.0 认证;第二步:获取代码授权后,这一步是请求访问令牌,使用图标请求访问url生成数据令牌;第三步:通过Access Token请求OpenID,openid是用户在本平台的唯一标识,通过图标Request info url请求,然后得到OpenID;第四步:通过第二步获取的数据Token、第三步获取的OpenID以及相关API,请求获取用户授权的资源信息 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(OAuth2.0协议授权流程查看/access_token获取)
  一、OAuth2.0概览
  大多数API访问,如发布微博、获取私信、关注等,都需要用户身份。目前新浪微博开放平台用户身份认证包括OAuth2.0和Basic Auth(仅用于应用开发Debugging接口),新版接口也仅支持这两种方式。 OAuth2.0比1.0的整个授权验证过程更简单、更安全,也是未来最重要的用户认证和授权方式。 OAuth2.0协议授权流程见OAuth2.0授权流程,其中Client指第三方应用,Resource Owner指用户,Authorization Server是我们的授权服务器,Resource Server是API 服务器。
  参考链接:以及新浪微博开放平台和新浪微博CodeProject开源项目
  开发者可以先浏览OAuth2.0的接口文档,熟悉OAuth2接口和参数的含义,然后根据应用场景讲解如何使用OAuth2.0 .
  OAuth2 接口文档
  接口说明
  OAuth2/授权
  请求用户授权令牌
  OAuth2/access_token
  获取授权访问令牌
  OAuth2/get_token_info
  授权信息查询界面
  OAuth2/revokeoauth2
  授权恢复接口
  OAuth2/get_oauth2_token
  OAuth1.0的Access Token替换为OAuth2.0的Access Token
  二、OAuth2.0 新浪授权页面
  1、 首先需要获取appKey和appSecret。这种获取方式可以在新浪微博新手指南中一步步获取。这里的回调地址使用默认的:网站访问方式。以下是C#示例源代码(控制台应用程序):
  01.using System;
02.using System.Collections.Generic;
03.using System.Linq;
04.using System.Text;
05.using NetDimension.Weibo;
06.using System.Net;
07.
08.namespace SinaWeiboTestApp
09.{
10. class Program
11. {
12.
13. static void Main(string[] args)
14. {
15.
16. string appkey = "124543453288";
17. string appsecret = "3a456c5332fd2cb1178338fccb9fa51c";
18. //string callBack = "http://127.0.0.1:3170/WebSite2/Default.aspx";
19. string callBack = "https://api.weibo.com/oauth2/default.html";
20. var oauth = new NetDimension.Weibo.OAuth(appkey,appsecret,callBack);
21.
22. ////模拟登录
23. //string username = "xxxxxxxx@163.com";
24. //string password = "xxxxxxx";
25. //oauth.ClientLogin(username, password); //模拟登录下,没啥好说的,你也可以改成标准登录。
26.
27. //标准登录
28. var authUrl = oauth.GetAuthorizeURL();
29. //string redirectUrl;
30. //HttpWebRequest request = (HttpWebRequest)HttpWebRequest.Create(authUrl);
31. //request.Referer = authUrl;
32. //request.AllowAutoRedirect = false;
33. //using (WebResponse response = request.GetResponse())
34. //{
35. // redirectUrl = response.Headers["Location"];
36. // redirectUrl = response.ResponseUri.AbsolutePath;
37. //}
38. System.Diagnostics.Process.Start(authUrl);
39. Console.WriteLine("填写浏览器地址中的Code参数:");
40. var code = Console.ReadLine();
41. var accessToken = oauth.GetAccessTokenByAuthorizationCode(code);
42. if (!string.IsNullOrEmpty(accessToken.Token))
43. {
44. var sina = new NetDimension.Weibo.Client(oauth);
45. var uid = sina.API.Dynamic.Account.GetUID(); //调用API中获取UID的方法
46. Console.WriteLine(uid);
47. }
48.
49. var Sina = new Client(oauth);
50. Console.WriteLine("开始发送异步请求...");
51.
52. //例子1:异步获取用户的ID
53. //demo的运行环境是.net 4.0,下面展示的这种方法在2.0及以上版本环境下有效,3.0以上可以用lambda表达式来简化delegate的蛋疼写法,请看下面的例子。
54. Sina.AsyncInvoke(
55. //第一个代理中编写调用API接口的相关逻辑
56. delegate()
57. {
58. Console.WriteLine("发送请求来获得用户ID...");
59. System.Threading.Thread.Sleep(8000); //等待8秒
60. return Sina.API.Entity.Account.GetUID();
61. },
62. //第二个代理为回调函数,异步完成后将自动调用这个函数来处理结果。
63. delegate(AsyncCallback callback)
64. {
65. if (callback.IsSuccess)
66. {
67. Console.WriteLine("获取用户ID成功,ID:{0}", callback.Data);
68. }
69. else
70. {
71. Console.WriteLine("获取用户ID失败,异常:{0}", callback.Error);
72. }
73. }
74. );
75.
76. //列子2:获取公共微博列表
77. //2.0以上用lambda来写,方便不是一点点
78. Sina.AsyncInvoke(() =>
79. {
80. //获取微博,接口调用,返回值是个NetDimension.Weibo.Entities.status.Collection,所以泛型T为NetDimension.Weibo.Entities.status.Collection
81. Console.WriteLine("发送请求来获得公共微博列表...");
82. return Sina.API.Entity.Statuses.PublicTimeline();
83. //return Sina.API.Entity.Statuses.RepostTimeline;
84. }, (callback) =>
85. {
86. if (callback.IsSuccess)
87. {
88. //异步完成后处理结果,result就是返回的结果,类型就是泛型所指定的NetDimension.Weibo.Entities.status.Collection
89. Console.WriteLine("获得公共微博列表成功,现在公共频道发微博的人都是他们:");
90. foreach (var status in callback.Data.Statuses)
91. {
92. if (status.User != null)
93. Console.WriteLine(status.User.ScreenName + " ");//打印公共微博发起人的姓名
94. }
95. Console.WriteLine();
96. }
97. else
98. {
99. Console.WriteLine("获取用户ID失败,异常:{0}", callback.Error);
100. }
101.
102. });
103.
104.
105. Console.WriteLine("已发送所有异步请求。等待异步执行完成...");
106.
107. Console.ReadKey(); //阻塞,等待异步调用执行完成
108.
109. }
110.
111. }
112.}
  MVC 中的代码:
  using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Myself.Models;
using Myself.Code;
using BLL;
using Lib;
using SpeexToWavToMp3;
using System.Web.Http.Filters;
using Models;
using Webdiyer.WebControls.Mvc;
using System.IO;
namespace Myself.Controllers
{
public class MySelfController : Controller
{
public ActionResult LoginSina()
{
var oauth = new NetDimension.Weibo.OAuth(appKey,appSecret,Url.Action("LoginSinaResult", "MySelf", null, "http"));
//第一步获取新浪授权页面的地址
var oauthUrl = oauth.GetAuthorizeURL();
return Redirect(oauthUrl);
}
public ActionResult LoginSinaResult(string code)
{
var oauth = new NetDimension.Weibo.OAuth(appKey, appSecret, Url.Action("LoginSinaResult", "MySelf", null, "http"));
var oauthToken = oauth.GetAccessTokenByAuthorizationCode(code);
var model = UserHelper.GetAuthorizeInfo(oauthToken.UID, 1);
if (model != null)
{
if (LoginHelper.UserLogin(model.UserID, 1, oauthToken.UID, Request.UserAgent, Request.UserHostAddress, "1", "web"))
{
return RedirectToAction("Index", "Home");
}
else
{
return Content("登录失败");
}
}
return Content("您尚未注册");
}
}
}
  要运行上述程序,需要替换Appkey和Appsecret。
  2、授权页面
  以下是提示微博登录的界面,登录后第三方网站授权访问您在新浪微博账号上的资源
  将提供。
  
  3、授权访问页面
  4、新浪官方网站提供API测试工具来测试客户端构造的参数是否正确
  
  5、Oauth2.0 操作流程图
  
  第一步:首先直接跳转到用户授权地址,即图标Request User Url,提示用户登录,授权相关资源获取唯一Auth code。这里注意代码只有10分钟的有效时间出于安全考虑,相比OAuth1.0,它节省了一步获取临时token,而且有效期也得到了控制,比1.0简单多了,安全多了@1.0 认证;第二步:获取代码授权后,这一步是请求访问令牌,使用图标请求访问url生成数据令牌;第三步:通过Access Token请求OpenID,openid是用户在本平台的唯一标识,通过图标Request info url请求,然后得到OpenID;第四步:通过第二步获取的数据Token、第三步获取的OpenID以及相关API,请求获取用户授权的资源信息

使用新浪微博开放平台api同步微博内容至自己网站(新浪微博的系统分为三个层次,最下层是基础服务层)

网站优化优采云 发表了文章 • 0 个评论 • 66 次浏览 • 2022-01-03 16:15 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(新浪微博的系统分为三个层次,最下层是基础服务层)
  系统分为三个层次。底层是基础服务层,提供数据库、缓存、存储、搜索等数据服务等基础技术服务。这些服务支撑了新浪微博的海量数据和高并发访问,是整个系统的技术基础。
  中间层是平台服务和应用服务层。新浪微博的核心服务是微博、关系和用户。这些服务被划分为独立的服务模块,依靠调用和共享基础数据,构成了新浪微博的业务基础。
  顶层是 API 和业务层。各种客户端和第三方应用调用API并将其集成到新浪微博系统中,形成一个生态系统。
  新浪微博系统架构
  这些层次分明的业务模块和基础技术模块是分布式部署的。每个模块部署在一组独立的服务器集群上,通过远程调用进行依赖访问。新浪微博早期也采用了一种分布式集群部署方案,叫做MPSS(MultiPost Single Server,单服务器多端口)。在集群中的多台服务器上,每台服务器都部署了多个服务,每个服务使用不同的服务。港口为外界提供服务。这样,有限数量的服务器就可以部署更多的服务实例,提高服务的负载均衡和可用性。现在常见的网站 应用将物理机虚拟化为多个虚拟机。在虚拟机上部署应用的方法和新浪微博的MPSS方案一样,但是更简单,可以在不同的虚拟机上使用。相同的端口号。
  在新浪微博的早期架构中,微博发布采用的是同步推送模式。用户发布一条微博后,系统会立即将这条微博插入到数据库中所有粉丝的订阅列表中。当用户数量比较大时,会造成大量的数据库写操作,超过数据库负载,系统性能急剧下降,用户响应延迟增加。后来新浪微博改用异步推拉组合模式。用户发布微博后,系统将微博写入消息队列并立即返回。用户反应很快。消息队列消费者任务将微博推送到当前所有在线粉丝的订阅列表。非在线用户登录后根据关注列表拉取微博订阅列表。
  由于微博频繁刷新,新浪微博采用了多级缓存策略。热门微博和名人用户缓存在所有微博服务器上,在线用户的微博和最近的微博缓存在分布式缓存集群中。微博操作中最常见的“刷微博”操作几乎都是缓存访问操作,可以获得良好的系统性能。
  为了提高系统的整体可用性和性能,新浪微博激活了多个数据中心。这些数据中心不仅是区域用户访问中心,用户可以就近访问数据中心,加快访问速度,提升系统性能;它们也是数据冗余复制的灾难恢复中心。所有用户和微博数据通过远程消息系统是不同的。在数据中心之间进行同步以提高系统可用性。​​
  同时,新浪微博还开发了一系列自动化工具,包括自动化监控、自动化发布、自动化故障修复等,这些自动化工具还在不断的开发中,以提升运维水平,增加系统可用性。​​
  由于微博的开放性,新浪微博也遇到了一系列的安全挑战。垃圾邮件、僵尸粉和微博攻击从未停止。新浪微博除了使用通用的网站通用安全策略外,在开放平台上使用多级安全审计策略来保护系统和用户。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(新浪微博的系统分为三个层次,最下层是基础服务层)
  系统分为三个层次。底层是基础服务层,提供数据库、缓存、存储、搜索等数据服务等基础技术服务。这些服务支撑了新浪微博的海量数据和高并发访问,是整个系统的技术基础。
  中间层是平台服务和应用服务层。新浪微博的核心服务是微博、关系和用户。这些服务被划分为独立的服务模块,依靠调用和共享基础数据,构成了新浪微博的业务基础。
  顶层是 API 和业务层。各种客户端和第三方应用调用API并将其集成到新浪微博系统中,形成一个生态系统。
  新浪微博系统架构
  这些层次分明的业务模块和基础技术模块是分布式部署的。每个模块部署在一组独立的服务器集群上,通过远程调用进行依赖访问。新浪微博早期也采用了一种分布式集群部署方案,叫做MPSS(MultiPost Single Server,单服务器多端口)。在集群中的多台服务器上,每台服务器都部署了多个服务,每个服务使用不同的服务。港口为外界提供服务。这样,有限数量的服务器就可以部署更多的服务实例,提高服务的负载均衡和可用性。现在常见的网站 应用将物理机虚拟化为多个虚拟机。在虚拟机上部署应用的方法和新浪微博的MPSS方案一样,但是更简单,可以在不同的虚拟机上使用。相同的端口号。
  在新浪微博的早期架构中,微博发布采用的是同步推送模式。用户发布一条微博后,系统会立即将这条微博插入到数据库中所有粉丝的订阅列表中。当用户数量比较大时,会造成大量的数据库写操作,超过数据库负载,系统性能急剧下降,用户响应延迟增加。后来新浪微博改用异步推拉组合模式。用户发布微博后,系统将微博写入消息队列并立即返回。用户反应很快。消息队列消费者任务将微博推送到当前所有在线粉丝的订阅列表。非在线用户登录后根据关注列表拉取微博订阅列表。
  由于微博频繁刷新,新浪微博采用了多级缓存策略。热门微博和名人用户缓存在所有微博服务器上,在线用户的微博和最近的微博缓存在分布式缓存集群中。微博操作中最常见的“刷微博”操作几乎都是缓存访问操作,可以获得良好的系统性能。
  为了提高系统的整体可用性和性能,新浪微博激活了多个数据中心。这些数据中心不仅是区域用户访问中心,用户可以就近访问数据中心,加快访问速度,提升系统性能;它们也是数据冗余复制的灾难恢复中心。所有用户和微博数据通过远程消息系统是不同的。在数据中心之间进行同步以提高系统可用性。​​
  同时,新浪微博还开发了一系列自动化工具,包括自动化监控、自动化发布、自动化故障修复等,这些自动化工具还在不断的开发中,以提升运维水平,增加系统可用性。​​
  由于微博的开放性,新浪微博也遇到了一系列的安全挑战。垃圾邮件、僵尸粉和微博攻击从未停止。新浪微博除了使用通用的网站通用安全策略外,在开放平台上使用多级安全审计策略来保护系统和用户。

使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博同步内容至自己网站)

网站优化优采云 发表了文章 • 0 个评论 • 50 次浏览 • 2022-01-03 02:04 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博同步内容至自己网站)
  使用新浪微博开放平台api同步微博内容至自己网站,可以获取到该用户的所有相关微博,并给予相应的推荐和访问权限,可以满足开发者的个性化需求。
  回答这个问题之前,你必须要先知道,腾讯做微博是需要认证的,不然是无法被腾讯推送的,只能发给朋友看,朋友必须通过认证,以后才能推送给自己的朋友看。新浪,其实并不需要认证,只要有加v认证,就能被新浪推送给所有的用户。
  关注关键词就能推送相关微博:weibochannel在weibo里面看twitter,发现更多
  不需要腾讯认证,
  使用腾讯账号登录,然后申请开通并认证,或者使用新浪微博开放平台认证都可以。不过现在微博的开放平台认证都要付费的,大概要99元。
  有个客户端叫微博,登录直接分享给你的店铺你的微博都能被同步出来,亲测。
  腾讯认证的微博帐号才可以推送微博内容给任何微博客户端,那就需要你去认证新浪微博帐号喽,如果没有认证,只能发原微博,不可以推送。
  要认证
  最简单就是认证咯,认证花钱,新浪的认证是365元,认证多了就是2000多元,别的还有个什么认证我忘记了,如果不需要认证的话,用微博提供的推送接口也可以推送一个无关联的自己微博到微博客户端,但是只支持基于手机的这种, 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(使用新浪微博开放平台api同步微博同步内容至自己网站)
  使用新浪微博开放平台api同步微博内容至自己网站,可以获取到该用户的所有相关微博,并给予相应的推荐和访问权限,可以满足开发者的个性化需求。
  回答这个问题之前,你必须要先知道,腾讯做微博是需要认证的,不然是无法被腾讯推送的,只能发给朋友看,朋友必须通过认证,以后才能推送给自己的朋友看。新浪,其实并不需要认证,只要有加v认证,就能被新浪推送给所有的用户。
  关注关键词就能推送相关微博:weibochannel在weibo里面看twitter,发现更多
  不需要腾讯认证,
  使用腾讯账号登录,然后申请开通并认证,或者使用新浪微博开放平台认证都可以。不过现在微博的开放平台认证都要付费的,大概要99元。
  有个客户端叫微博,登录直接分享给你的店铺你的微博都能被同步出来,亲测。
  腾讯认证的微博帐号才可以推送微博内容给任何微博客户端,那就需要你去认证新浪微博帐号喽,如果没有认证,只能发原微博,不可以推送。
  要认证
  最简单就是认证咯,认证花钱,新浪的认证是365元,认证多了就是2000多元,别的还有个什么认证我忘记了,如果不需要认证的话,用微博提供的推送接口也可以推送一个无关联的自己微博到微博客户端,但是只支持基于手机的这种,

使用新浪微博开放平台api同步微博内容至自己网站(使用API提交数据(发布一条微博信息)(组图))

网站优化优采云 发表了文章 • 0 个评论 • 63 次浏览 • 2022-01-02 22:13 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(使用API提交数据(发布一条微博信息)(组图))
  我也是新手,第一次使用开放平台进行开发。一开始,我觉得无处可去。经过长时间的摸索,终于成功调用了API。现在把这个经验介绍给新手(高手不需要看,当然,如果你能提出一些意见和建议,我感激不尽),我想和你交流。
  这个例子描述了如何使用API​​提交数据(发布微博)和使用API​​获取数据(获取最新更新的20条公开微博消息),即“获取下游数据集(时间线)”官方API)“statuses/public_timeline下的“获取最新更新的公众微博消息接口”和“statuses/update发布微博信息”下的“微博访问接口”。
  首先,您必须有新浪微博账号,并申请一个应用秘钥(详见%E6%96%B0%E6%89%8B%E6%8C%87%E5%8D%9< @7),然后在VS中新建一个解决方案,在解决方案中添加一个类库和一个网站,并添加一个引用(网站引用类库)。
  
  因为发布微博是POST请求,获取数据是GET请求,并且是通过HTTP基本认证(Basic Authentication)授权,所以我把这些函数写在一个类中(在类库中),代码如下如下(这个类仅供参考,没有仔细考虑是否通用):
  
  发送请求和授权码
  然后在类库中创建两个实体类status和user,字段与官方API相同:
  
  状态实体类
  
  用户实体类
  好的,经过以上步骤,准备工作就完成了。现在我们可以调用 API。我们来看看发布一条微博消息。虽然在这个文章()中有介绍,但是为了本文的完整性,我只是粘贴了我的代码,并在类库中添加了一个MiniBlogVisit类:
  
  微博访问班
  您可以通过调用更新方法发布微博。但需要注意的是,这里的Content必须使用HttpUtility.UrlEncode进行编码,否则会出现乱码。
  最新更新看20条公众微博消息,这是官方API中的第一个接口。这是 XML 数据或 JSON 数据。您可以根据自己的喜好自由选择。我选择返回 XML。数据。我的方法是将返回的XML数据写入XML文件,然后解析XML文件,代码如下:
  
  获取数据代码
  好的,现在它被调用了。调用比较简单,是一个空的Default.aspx页面,后台代码如下:
  
  调用代码
  至此,所有代码都写完了,来看看完整的解决方案:
  
  运行后效果如下:
  
  第一次调用API,第一次写这么长的文章。欢迎大家! ! ! 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(使用API提交数据(发布一条微博信息)(组图))
  我也是新手,第一次使用开放平台进行开发。一开始,我觉得无处可去。经过长时间的摸索,终于成功调用了API。现在把这个经验介绍给新手(高手不需要看,当然,如果你能提出一些意见和建议,我感激不尽),我想和你交流。
  这个例子描述了如何使用API​​提交数据(发布微博)和使用API​​获取数据(获取最新更新的20条公开微博消息),即“获取下游数据集(时间线)”官方API)“statuses/public_timeline下的“获取最新更新的公众微博消息接口”和“statuses/update发布微博信息”下的“微博访问接口”。
  首先,您必须有新浪微博账号,并申请一个应用秘钥(详见%E6%96%B0%E6%89%8B%E6%8C%87%E5%8D%9< @7),然后在VS中新建一个解决方案,在解决方案中添加一个类库和一个网站,并添加一个引用(网站引用类库)。
  
  因为发布微博是POST请求,获取数据是GET请求,并且是通过HTTP基本认证(Basic Authentication)授权,所以我把这些函数写在一个类中(在类库中),代码如下如下(这个类仅供参考,没有仔细考虑是否通用):
  
  发送请求和授权码
  然后在类库中创建两个实体类status和user,字段与官方API相同:
  
  状态实体类
  
  用户实体类
  好的,经过以上步骤,准备工作就完成了。现在我们可以调用 API。我们来看看发布一条微博消息。虽然在这个文章()中有介绍,但是为了本文的完整性,我只是粘贴了我的代码,并在类库中添加了一个MiniBlogVisit类:
  
  微博访问班
  您可以通过调用更新方法发布微博。但需要注意的是,这里的Content必须使用HttpUtility.UrlEncode进行编码,否则会出现乱码。
  最新更新看20条公众微博消息,这是官方API中的第一个接口。这是 XML 数据或 JSON 数据。您可以根据自己的喜好自由选择。我选择返回 XML。数据。我的方法是将返回的XML数据写入XML文件,然后解析XML文件,代码如下:
  
  获取数据代码
  好的,现在它被调用了。调用比较简单,是一个空的Default.aspx页面,后台代码如下:
  
  调用代码
  至此,所有代码都写完了,来看看完整的解决方案:
  
  运行后效果如下:
  
  第一次调用API,第一次写这么长的文章。欢迎大家! ! !

使用新浪微博开放平台api同步微博内容至自己网站(基于微博的移动电子商务系统Android客户端软件(SoftwareDevelopmentKit)为第三方微博应用)

网站优化优采云 发表了文章 • 0 个评论 • 54 次浏览 • 2022-01-02 22:13 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(基于微博的移动电子商务系统Android客户端软件(SoftwareDevelopmentKit)为第三方微博应用)
  Android 是基于 Linux 内核的操作系统。以其独特的开放性,广泛应用于智能手机等智能终端,并迅速发展成为市场占有率最大的手机操作系统。电子商务近年来发展迅速,通过互联网进行交易已成为一种趋势。作为智能移动终端与电子商务的结合,移动电子商务具有巨大的发展潜力。微博是微博的简称,是一个基于用户关系的信息共享、传播和获取平台。用户以文本形式更新信息,实现即时分享。微博的开放性和即时性使其成为发展最快的互联网业务。因此,依靠微博平台推动移动电子商务的发展具有很大的市场价值,但目前市场上还没有基于微博平台的移动电子商务软件。在此背景下,基于微博的移动电子商务系统Android客户端软件应运而生。由于新浪微博是中国用户最多的微博平台,本系统以新浪微博为开发平台。新浪微博Android平台SDK(SoftwareDevelopmentKit)为第三方微博应用提供简单易用的微博API调用服务,让第三方客户端无需了解复杂的验证、API(应用程序接口)调用流程。并且可以实现分享到微博的功能,可以将文字或多媒体信息分享到内置的分享页面,并发送到微博。
  这个SDK封装了对HTTP请求和Json信息的分析。我们只需要实现页面相关功能的开发,大大减轻了程序员的开发压力。本文所讨论的系统开发的核心内容是基于Android平台,结合新浪微博API实现基于微博的移动电子商务系统的Android客户端软件。本文介绍了移动电子商务、Android开发平台和微博开发平台相关技术,分析了电子商务、Android手机平台和微博系统目前国内外的应用,并设计了一个基于新浪的Android移动电子商务系统。微博客户端软件实现登录注册模块、业务信息模块、微博编辑模块、采集夹模块、个人信息模块、二维码模块、天气查询模块。最后,该系统使用户不必再花时间在线搜索产品。只要你有一部安卓手机,用户就可以随时随地浏览商家促销信息。它不仅解放了时间和空间的限制,而且让用户更有效地利用时间。他们可以利用在公交车上、地铁上的时间,以及许多其他的等待时间来获取商业信息。完成了基于微博的电子商务系统Android客户端软件的基本功能开发。现在软件可以正常运行了。大大节省了人们挑选商品的时间,加快了商品流通,方便卖家推广商品,买家获得更多优惠折扣,及时与微博好友分享商家推广信息。 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(基于微博的移动电子商务系统Android客户端软件(SoftwareDevelopmentKit)为第三方微博应用)
  Android 是基于 Linux 内核的操作系统。以其独特的开放性,广泛应用于智能手机等智能终端,并迅速发展成为市场占有率最大的手机操作系统。电子商务近年来发展迅速,通过互联网进行交易已成为一种趋势。作为智能移动终端与电子商务的结合,移动电子商务具有巨大的发展潜力。微博是微博的简称,是一个基于用户关系的信息共享、传播和获取平台。用户以文本形式更新信息,实现即时分享。微博的开放性和即时性使其成为发展最快的互联网业务。因此,依靠微博平台推动移动电子商务的发展具有很大的市场价值,但目前市场上还没有基于微博平台的移动电子商务软件。在此背景下,基于微博的移动电子商务系统Android客户端软件应运而生。由于新浪微博是中国用户最多的微博平台,本系统以新浪微博为开发平台。新浪微博Android平台SDK(SoftwareDevelopmentKit)为第三方微博应用提供简单易用的微博API调用服务,让第三方客户端无需了解复杂的验证、API(应用程序接口)调用流程。并且可以实现分享到微博的功能,可以将文字或多媒体信息分享到内置的分享页面,并发送到微博。
  这个SDK封装了对HTTP请求和Json信息的分析。我们只需要实现页面相关功能的开发,大大减轻了程序员的开发压力。本文所讨论的系统开发的核心内容是基于Android平台,结合新浪微博API实现基于微博的移动电子商务系统的Android客户端软件。本文介绍了移动电子商务、Android开发平台和微博开发平台相关技术,分析了电子商务、Android手机平台和微博系统目前国内外的应用,并设计了一个基于新浪的Android移动电子商务系统。微博客户端软件实现登录注册模块、业务信息模块、微博编辑模块、采集夹模块、个人信息模块、二维码模块、天气查询模块。最后,该系统使用户不必再花时间在线搜索产品。只要你有一部安卓手机,用户就可以随时随地浏览商家促销信息。它不仅解放了时间和空间的限制,而且让用户更有效地利用时间。他们可以利用在公交车上、地铁上的时间,以及许多其他的等待时间来获取商业信息。完成了基于微博的电子商务系统Android客户端软件的基本功能开发。现在软件可以正常运行了。大大节省了人们挑选商品的时间,加快了商品流通,方便卖家推广商品,买家获得更多优惠折扣,及时与微博好友分享商家推广信息。

使用新浪微博开放平台api同步微博内容至自己网站(这是移动端微博信息_selenium_sina__)

网站优化优采云 发表了文章 • 0 个评论 • 51 次浏览 • 2022-01-02 12:05 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(这是移动端微博信息_selenium_sina__)
  这是一个新浪微博爬虫,使用python+selenium实现。免费资源,希望对你有帮助,虽然是傻瓜式爬虫,但至少能跑。同时在rar中收录了源代码和爬取示例。参考我的文章:【python爬虫】Selenium爬取新浪微博内容和用户信息【python爬虫】Selenium爬取新浪微博客户端用户信息、热点话题和评论(上) 主要爬取内容包括:新浪微博手机用户信息和微博信息。用户信息:包括用户ID、用户名、微博数、粉丝数、关注数等。 微博信息:包括转发或原创、点赞、转发、评论、发布时间、微博内容等。安装过程:1.先安装Python环境,作者是Python2.7.82.然后安装PIP或者easy_install3.通过安装selenium命令pip install selenium,是一个自动测试爬取的工具4.然后在代码中修改用户名和密码,填写自己的用户名和密码5.运行程序,并自动调用火狐浏览器登录微博。注:手机信息更精致简洁,动态加载没有限制,只是显示微博或粉丝id等20个页面,这是它的缺点;虽然客户端可能有动态加载,比如评论和微博,但它的信息更完整。 [源码] 爬取手机微博信息spider_selenium_sina_content.py 输入:明星用户id列表,使用URL+用户id访问(这些id可以从用户的关注列表中获取) SinaWeibo_List_best_1.txt 输出:微博信息和基本信息用户信息 SinaWeibo_Info_best_1.txtMegry_Result_Best.py 用户使用该文件整理某一天的用户微博信息,例如2016年4月23日【源代码】爬取客户端微博信息抓取客户端信息,但是评论是动态的已加载,还在研究中 weibo_spider2.pyBy:Eastmount 2016-04-24 查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(这是移动端微博信息_selenium_sina__)
  这是一个新浪微博爬虫,使用python+selenium实现。免费资源,希望对你有帮助,虽然是傻瓜式爬虫,但至少能跑。同时在rar中收录了源代码和爬取示例。参考我的文章:【python爬虫】Selenium爬取新浪微博内容和用户信息【python爬虫】Selenium爬取新浪微博客户端用户信息、热点话题和评论(上) 主要爬取内容包括:新浪微博手机用户信息和微博信息。用户信息:包括用户ID、用户名、微博数、粉丝数、关注数等。 微博信息:包括转发或原创、点赞、转发、评论、发布时间、微博内容等。安装过程:1.先安装Python环境,作者是Python2.7.82.然后安装PIP或者easy_install3.通过安装selenium命令pip install selenium,是一个自动测试爬取的工具4.然后在代码中修改用户名和密码,填写自己的用户名和密码5.运行程序,并自动调用火狐浏览器登录微博。注:手机信息更精致简洁,动态加载没有限制,只是显示微博或粉丝id等20个页面,这是它的缺点;虽然客户端可能有动态加载,比如评论和微博,但它的信息更完整。 [源码] 爬取手机微博信息spider_selenium_sina_content.py 输入:明星用户id列表,使用URL+用户id访问(这些id可以从用户的关注列表中获取) SinaWeibo_List_best_1.txt 输出:微博信息和基本信息用户信息 SinaWeibo_Info_best_1.txtMegry_Result_Best.py 用户使用该文件整理某一天的用户微博信息,例如2016年4月23日【源代码】爬取客户端微博信息抓取客户端信息,但是评论是动态的已加载,还在研究中 weibo_spider2.pyBy:Eastmount 2016-04-24

使用新浪微博开放平台api同步微博内容至自己网站(1.:OAUth认证方式比于BaseOAuthOAuth的认证资料比较少 )

网站优化优采云 发表了文章 • 0 个评论 • 48 次浏览 • 2022-01-01 20:20 • 来自相关话题

  使用新浪微博开放平台api同步微博内容至自己网站(1.:OAUth认证方式比于BaseOAuthOAuth的认证资料比较少
)
  由于 Twitter 近期只支持 OAuth 认证方式,各大应用纷纷转向 OAuth 认证方式,新浪微博开放平台也将在近期停止 Base OAuth 认证方式。
  为了继续使用新浪微博的开放平台,我开始研究OAuth认证方式。经过一段时间的实践,对新浪微博开放平台的OAuth认证方式有了一定的体会。鉴于网上关于这个平台的OAuth相关资料比较少,在此分享一下过程中积累的经验。希望对一些想使用OAuth认证的人调用新浪微博界面有所帮助~~
  1.关于 OAuth:
  OAUth认证方式相比Base OAuth认证方式最大的特点是应用端不需要保存用户的账号和密码,只需要用户授权的Key和Secret组合即可平台上的接口资源进行访问,在传输过程中,也可以通过截包分析,防止恶意人员获取用户的账号和密码。 (有一种说法,推特之所以完全切换到OAuth认证,是为了防止GFW通过截包的方式获取一些相关名人的账号和密码)。具体定义可以阅读OAuth规范定义:OAuth规范。
  2.新浪微博开放平台:
  新浪微博开放平台的基本界面、参数、返回格式参考推特模型。当然,国内其他一些开放平台也大量借鉴了推特的模式,所以基本一致。要使用新浪微博的开放平台,当然首先要到其网站注册:新浪微博API。
  注册后会得到Consumer Key和Consumer Secret两个关键字段。保存它们。
  新浪微博的开发平台有足够的文档,可以快速调用这些接口。除了一些困难的接口,我们将在下面讨论。
  3.在新浪使用 OAuth:
  要使用 OAuth,用户必须先获得授权。一般来说,授权流程如下:
  (1)应用向新浪开发平台发送请求,获取未授权的Request Token和Request Secret。此时Request Secret暂时不用,请妥善保管。
  (2)以上一步获取的Request Token为参数,引导用户浏览器跳转到新浪微博授权页面,用户进入该页面登录新浪微博进行授权Token。如果在() 作为参数,传递给新浪微博服务器,服务器会返回真实的Access Token和Access Secret,新浪微博也会返回用户在新浪微博的userid,有了用户的Access Token和Access Secret,你可以自由方便地调用新浪微博的开放界面。
  每次调用都必须收录 OAuth 身份验证信息。作为OAuth认证信息,添加到请求包中基本上有两种方式:
  (1)最推荐的方法是使用HTTP Authorization Header。这个header的定义在RFC2617中定义。
  例如:
      Authorization: OAuth realm="http://photos.example.net/",
                oauth_consumer_key="dpf43f3p2l4k3l03",
                oauth_token="nnch734d00sl2jdk",
                oauth_signature_method="HMAC-SHA1",
                oauth_signature="tR3%2BTy81lMeYAr%2FFid0kMTYa%2FWM%3D",
                oauth_timestamp="1191242096", oauth_nonce="kllo9940pd9333jh",
                oauth_version="1.0"
       (2)或者可以采用,参数传递的方式,将OAuth的参数与正常的参数一样放置与Get的URL中,或者POST的包体内容中,都是可以的,
  但遇到一些特殊情况就较难解决这个问题了。
  4.OAuth认证参数解析:
   在上面可以看到,一个正常的OAuth认证中,包含以下若干参数:<br />
    (1)oauth_consumer_key: 即是注册时,新浪给你的conusmer key,明文传输<br />
    (2)oauth_token: 即是用户完成OAuth认证后的Access Token,在进行OAuth认证第三步的时候,为Request Token,
   第一步时不需要这个参数
    (3)oauth_signature_method:加密的方法,提供HMAC-SHA1, RSA-SHA1, PLAINTEXT 几种方法<br />
    (4)oauth_signature: 对于全部参数进行加密后的字符串,包括consumer secret和access secret<br />
    (5)oauth_timestamp:发请求的时间戳<br />
    (6)oauth_version:可选的参数,基本上置为1.0,否则会出错的。<br />
    (7)oauth_nonce:随机的值,防止重复调用<br />
  5.上传图片OAuth之痛:
    使用上面的方法,基本上可以解决所有的接口调用。但遇到难搞的上传图片这样的请求时,就需要一些方法取巧了。<br />
    新浪微博的开放平台,要求上传图片时必须使用multipart/form-data的方式进行上传,但OAuth协议在定义时,描述Content-Type为
  application/x-www-form-urlencoded, 而并没有提及如何在multipart/form-data使用。<br />
    在网上基本上找不到任何一个地方有提及在新浪微博的开放平台上以OAuth的方式上传图片,经过一个晚上的尝试与借鉴Twitter上的做法后,
  终于发现了解决方法。
    基本上,在协议上没有说明的内容,就必须由民间采用较为直观的方式进行解决。要在新浪微博的接口中进行图片上传,必须使用multipart/
  form-data作为Content-Type,而OAuth的认证参数不能放入form-data的参数中,必须使用Authorization Header来认证,而这时,必须将除了文
  件(file)的参数,就是将status这个参数加入到oauth的BaseString中进行加密,再将status作为fom-data的一个value中,这样就能够
  正常的上传图片并发表微博了。通过这个简单而麻烦的方法,终于能够安全地上传图片到新浪微博。
  6.最后
    至此,本人已成功调用新浪微博绝大多数的接口,并开始将应用覆盖搜狐微博,网易微博等开放平台,希望可以通过这篇文章,记录下一些经
  验与教训。<br />
  <br />
  7.参考资料
  [RFC5849]E。哈默拉哈夫,埃德。 “OAuth 1.0 协议”,RFC5849
  [RFC1867] E. Nebel,L. Masinter,“HTML 中基于表单的文件上传”,RFC1867
  [RFC2616] Fielding,R.,Gettys,J,e "超文本传输​​协议 - HTTP/1.1", RFC2616
  [RFC2617] Franks,J.“HTTP 身份验证:基本和摘要式访问身份验证”,RFC2617
  新浪微博开放平台:
        查看全部

  使用新浪微博开放平台api同步微博内容至自己网站(1.:OAUth认证方式比于BaseOAuthOAuth的认证资料比较少
)
  由于 Twitter 近期只支持 OAuth 认证方式,各大应用纷纷转向 OAuth 认证方式,新浪微博开放平台也将在近期停止 Base OAuth 认证方式。
  为了继续使用新浪微博的开放平台,我开始研究OAuth认证方式。经过一段时间的实践,对新浪微博开放平台的OAuth认证方式有了一定的体会。鉴于网上关于这个平台的OAuth相关资料比较少,在此分享一下过程中积累的经验。希望对一些想使用OAuth认证的人调用新浪微博界面有所帮助~~
  1.关于 OAuth:
  OAUth认证方式相比Base OAuth认证方式最大的特点是应用端不需要保存用户的账号和密码,只需要用户授权的Key和Secret组合即可平台上的接口资源进行访问,在传输过程中,也可以通过截包分析,防止恶意人员获取用户的账号和密码。 (有一种说法,推特之所以完全切换到OAuth认证,是为了防止GFW通过截包的方式获取一些相关名人的账号和密码)。具体定义可以阅读OAuth规范定义:OAuth规范。
  2.新浪微博开放平台:
  新浪微博开放平台的基本界面、参数、返回格式参考推特模型。当然,国内其他一些开放平台也大量借鉴了推特的模式,所以基本一致。要使用新浪微博的开放平台,当然首先要到其网站注册:新浪微博API。
  注册后会得到Consumer Key和Consumer Secret两个关键字段。保存它们。
  新浪微博的开发平台有足够的文档,可以快速调用这些接口。除了一些困难的接口,我们将在下面讨论。
  3.在新浪使用 OAuth:
  要使用 OAuth,用户必须先获得授权。一般来说,授权流程如下:
  (1)应用向新浪开发平台发送请求,获取未授权的Request Token和Request Secret。此时Request Secret暂时不用,请妥善保管。
  (2)以上一步获取的Request Token为参数,引导用户浏览器跳转到新浪微博授权页面,用户进入该页面登录新浪微博进行授权Token。如果在() 作为参数,传递给新浪微博服务器,服务器会返回真实的Access Token和Access Secret,新浪微博也会返回用户在新浪微博的userid,有了用户的Access Token和Access Secret,你可以自由方便地调用新浪微博的开放界面。
  每次调用都必须收录 OAuth 身份验证信息。作为OAuth认证信息,添加到请求包中基本上有两种方式:
  (1)最推荐的方法是使用HTTP Authorization Header。这个header的定义在RFC2617中定义。
  例如:
      Authorization: OAuth realm="http://photos.example.net/",
                oauth_consumer_key="dpf43f3p2l4k3l03",
                oauth_token="nnch734d00sl2jdk",
                oauth_signature_method="HMAC-SHA1",
                oauth_signature="tR3%2BTy81lMeYAr%2FFid0kMTYa%2FWM%3D",
                oauth_timestamp="1191242096", oauth_nonce="kllo9940pd9333jh",
                oauth_version="1.0"
       (2)或者可以采用,参数传递的方式,将OAuth的参数与正常的参数一样放置与Get的URL中,或者POST的包体内容中,都是可以的,
  但遇到一些特殊情况就较难解决这个问题了。
  4.OAuth认证参数解析:
   在上面可以看到,一个正常的OAuth认证中,包含以下若干参数:<br />
    (1)oauth_consumer_key: 即是注册时,新浪给你的conusmer key,明文传输<br />
    (2)oauth_token: 即是用户完成OAuth认证后的Access Token,在进行OAuth认证第三步的时候,为Request Token,
   第一步时不需要这个参数
    (3)oauth_signature_method:加密的方法,提供HMAC-SHA1, RSA-SHA1, PLAINTEXT 几种方法<br />
    (4)oauth_signature: 对于全部参数进行加密后的字符串,包括consumer secret和access secret<br />
    (5)oauth_timestamp:发请求的时间戳<br />
    (6)oauth_version:可选的参数,基本上置为1.0,否则会出错的。<br />
    (7)oauth_nonce:随机的值,防止重复调用<br />
  5.上传图片OAuth之痛:
    使用上面的方法,基本上可以解决所有的接口调用。但遇到难搞的上传图片这样的请求时,就需要一些方法取巧了。<br />
    新浪微博的开放平台,要求上传图片时必须使用multipart/form-data的方式进行上传,但OAuth协议在定义时,描述Content-Type为
  application/x-www-form-urlencoded, 而并没有提及如何在multipart/form-data使用。<br />
    在网上基本上找不到任何一个地方有提及在新浪微博的开放平台上以OAuth的方式上传图片,经过一个晚上的尝试与借鉴Twitter上的做法后,
  终于发现了解决方法。
    基本上,在协议上没有说明的内容,就必须由民间采用较为直观的方式进行解决。要在新浪微博的接口中进行图片上传,必须使用multipart/
  form-data作为Content-Type,而OAuth的认证参数不能放入form-data的参数中,必须使用Authorization Header来认证,而这时,必须将除了文
  件(file)的参数,就是将status这个参数加入到oauth的BaseString中进行加密,再将status作为fom-data的一个value中,这样就能够
  正常的上传图片并发表微博了。通过这个简单而麻烦的方法,终于能够安全地上传图片到新浪微博。
  6.最后
    至此,本人已成功调用新浪微博绝大多数的接口,并开始将应用覆盖搜狐微博,网易微博等开放平台,希望可以通过这篇文章,记录下一些经
  验与教训。<br />
  <br />
  7.参考资料
  [RFC5849]E。哈默拉哈夫,埃德。 “OAuth 1.0 协议”,RFC5849
  [RFC1867] E. Nebel,L. Masinter,“HTML 中基于表单的文件上传”,RFC1867
  [RFC2616] Fielding,R.,Gettys,J,e "超文本传输​​协议 - HTTP/1.1", RFC2616
  [RFC2617] Franks,J.“HTTP 身份验证:基本和摘要式访问身份验证”,RFC2617
  新浪微博开放平台:
       

官方客服QQ群

微信人工客服

QQ人工客服


线