我想拉下一个饲料(如Twitter),并使用javascript(jquery)放置在页面上。最终,“服务”只需要交出JSON。我创建了一个Web服务,允许我这样做,有点。我不知道使用流媒体阅读器是否有效,而且我有点为使用在客户端上的2次演示而烦恼。使用跨服务器脚本的网络服务
我的问题是双重的:有没有更好的方法比使用Web服务和两个,是否有我的实现问题?
的.asmx:
[WebMethod]
public string HelloWorld()
{
WebRequest request = WebRequest.Create("http://twitter.com/statuses/user_timeline/username.json?count=1");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
StreamReader reader = new StreamReader(response.GetResponseStream());
string tmp = reader.ReadToEnd();
response.Close();
reader.Close();
return tmp;
}
的.aspx
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"></script>
<script>
$(document).ready(function() {
$.ajax({
url: "WebService1.asmx/twitter",
type: "POST",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(obj) {
var t = eval(obj.d)[0].text;
$('div').html(t);
}
})
});
</script>
第一部分是更清洁。谢谢。该jQuery图书馆会很方便,但我想包括在这个例子中的Twitter可能会分散注意力。我真的想创建一个跨域解决方案。 Twitter很简单。但是,也许我正在推翻这一点。如果一个服务提供json,那么客户端库是我所需要的吗? – LeRoy 2010-02-20 21:33:30
服务器端请求在需要身份验证且您不希望在脚本中保留密码的情况下非常有用。 – 2010-02-20 22:26:23
我会这样想,除了保罗说,你可能不想在你的JavaScript中存储凭据。 – awright18 2010-02-20 23:53:26