基于新浪开放平台的企业微博影响力分析应用的学习笔记。
来源:互联网 发布:mac itunes不显示铃声 编辑:程序博客网 时间:2024/06/14 20:07
新浪接口
不得不说,新浪接口是在不断补充和改进中前行的。我个人在写下面的东西要告诉大家的事情是
1代新浪接口与2代新浪接口的验证信息以及方法都是不共用的,即,2代验证后的access不能用在1代接口的参数中,用也是错的。
其次,2代接口要求的几样东西需要大家清楚:1)应用app_key,app_secret;2)在新浪应用--高级信息中填写回调地址callback_url,这个都是必须的,因为会验证,如果你在调用的过程当中没写清楚,回来的必然是接口mismatch错误。
1、 json反序列化
新浪接口返回来的是json格式的信息,需要我们反序列化,我个人是将返回的参数放到对象中调用,下面是一个例子。
2012-3-9补充:加入了JSON反序列化成某对象的集合的方法。.NET2.0需要另外下载调用Newtonsoft.Json.dll;
对象:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Runtime.Serialization;
/// <summary>
/// AccessToken 的摘要说明
/// </summary>
///
[DataContract]
public class AccessTokenObject
{
/// Represents the user ids.
/// </summary>
///http://www.baigelong.com/#access_token=2.00HhJd1CkaGmpB907f44bb37wf9zyC&expires_in=86400&remind_in=72302&uid=2137124445
private string _access_token= "";
private string _expires_in = "";
private string _remind_in="";
private string _uid="";
public AccessTokenObject()
{
// TODO: 在此处添加构造函数逻辑
//
}
/// <remarks/>
[DataMember(Name = "access_token")]
public string access_token
{
get { return _access_token; }
set { _access_token = value; }
}
[DataMember]
public string expires_in
{
get { return _expires_in; }
set { _expires_in = value; }
}
[DataMember]
public string remind_in
{
get { return _remind_in; }
set { _remind_in = value; }
}
/// <remarks/>
///
[DataMember(Name = "uid")]
public string uid
{
get { return _uid; }
set { _uid = value; }
}
}
方法:
//反序列化成一个对象
public static T JsonToObject<T>(string jsonStr) where T : class
{
T result = null;
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
using (var ms = new MemoryStream(Encoding.UTF8.GetBytes(jsonStr)))
{
result = ser.ReadObject(ms) as T;
}
return result;
}
//反序列化成某一个对象的集合
public static Collection<T> JSONStringToList<T>(string JsonStr) where T : class
{
Collection<T> Data = JavaScriptConvert.DeserializeObject<Collection<T>>(JsonStr);
return Data;
}
使用:
private string ACCESS_TOKEN = "https://api.weibo.com/oauth2/access_token";
ACCESS_TOKEN += "?client_id="+ this.appKey+"&client_secret="+this.appSecret+"&grant_type=authorization_code&redirect_uri=http://www.baigelong.com&code="+this.code;
//发送请求
string response = oAuthWebRequest(Method.POST, ACCESS_TOKEN, string.Empty);
//新建对象
AccessTokenObject accesstokenobject = new AccessTokenObject();
//返回信息
if (response.Length > 0)
{
accesstokenobject = JsonSerializationHelper.JsonToObject<AccessTokenObject>(response);
}
return accesstokenobject;
jquery类
1、做折叠层
代码比较简单,自己推敲。里面都是jquery的基本特效,没太复杂的东西。
fadeIn,fadeOut方法可选
fadeIn("slow or fast",callback function);
fadeIn("slow or fast");
1)网页代码
<table width="100%" cellpadding="0" cellspacing="0">
<tr>
<td class="td_clumn">说明</td>
</tr>
<tr>
<td class="td_row"><a href="#" id="qst1" class="qst" onclick="read();">什么是微博影响力?</a></td>
</tr>
<tr>
<td class="td_row">
<div id="as1" visible="false" class="as">
<p>曾经有一份真诚的爱情摆在我的面前<br>但是我没有珍惜<br>等到了失去的时候才后悔莫及<br>尘世间最痛苦的事莫过于此<br>如果上天可以给我一个机会再来一次的话<Br>我会跟那个女孩子说'我爱你'<br>如果非要把这份爱加上一个期限<br>我希望是一万年!</p>
</div>
</td>
</tr>
</tr>
</table>
2)JS方法
function read(){
var id = window.event.srcElement.id;
id = "#as"+id.charAt(id.length-1);
if($(id).attr("visible")=="false"){
$(id).fadeIn("slow",function(){$(id).attr("visible",true)});
}else{
$(id).fadeOut("slow",function(){$(id).attr("visible","false")});
}
}
- 基于新浪开放平台的企业微博影响力分析应用的学习笔记。
- PHP+新浪微博开放平台+新浪云平台(SAE)开发微博应用——进一步学习的走向和有用的资源
- PHP+新浪微博开放平台+新浪云平台(SAE)开发微博应用——建立微博应用的过程
- PHP+新浪微博开放平台+新浪云平台(SAE)开发微博应用——建立微博应用的过程
- IOS基于新浪微博开放平台微博APP
- PHP+新浪微博开放平台+新浪云平台(SAE)开发微博应用——必须交待的几个问题
- Oauth2认证以及新浪微博开放平台应用
- PHP+新浪微博开放平台+新浪云平台(SAE)开发微博应用基础
- PHP+新浪微博开放平台+新浪云平台(SAE)开发微博应用基础
- PHP+新浪微博开放平台+新浪云平台(SAE)开发微博应用
- iOS学习之iOS5.0以上 使用新浪微博开放平台OAuth 以及bShare的使用
- 新浪与腾讯的开放平台对比
- 获取新浪开放平台的Access token
- 新浪微博开放平台深度历险 - hfahe的专栏 - CSDN博客新浪微博开放平台深度历险 - hfahe的专栏 - CSDN博客
- 新浪微博与腾讯微博的开放平台比较 -- 从程序员的角度
- 新浪微博与腾讯微博的开放平台比较 -- 从程序员的角度
- 基于开放平台的授权
- 调用新浪微博开放平台接口
- java 如何使的float保留2位或者多位小数
- Android应用开发之视频播放器
- 调查服务器响应时间的利器 tcprstat
- C++ Primer 4 第十二章 类
- Android 对话框 (AlertDialog & ProgressDialog)
- 基于新浪开放平台的企业微博影响力分析应用的学习笔记。
- Android 获取设备的物理尺寸
- GoAhead WebServer URL Handlers
- Spring如何查找XSD?
- 网络安全选项的调整
- Android Intent介绍
- C++ primer 4 第十三章 复制控制
- GoForms
- C++ Primer 4 第十四章 重载操作符与转换