首页 新闻 搜索 专区 学院

asp.net mvc ajax跨域请求

0
悬赏园豆:10 [已解决问题] 解决于 2013-11-11 10:52

最近学习MVC 想通过AJAX跨域访问外部连接,并读取他的title标签的值。求指教

大芝麻的主页 大芝麻 | 初学一级 | 园豆:4
提问于:2013-11-09 12:53
< >
分享
最佳答案
0

看了你们的回复你知道你的需求了,你用ajax调Action的方法就行了,然后在Action中用HttpWebrequest类与HttpWebresponse 类来构造一个http请求,然后得到响应的资源,再从响应中取title的值 就行了,

我提供下构造请求的代码

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.cnblogs.com");
request.Method = "GET";

WebHeaderCollection headers = new WebHeaderCollection();
headers.Add("Accept-Language", "zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3");
request.Headers = headers;
request.ContentType = "text/html; charset=utf-8";

WebResponse response = request.GetResponse();
var reStream = response.GetResponseStream(); //这里就已经得到响应的字符流了

StreamReader read = new StreamReader(reStream,Encoding.UTF8);
string content = read.ReadToEnd();//从这里面过滤到你想要的title值就行了 

收获园豆:6
Zery | 大侠五级 |园豆:6139 | 2013-11-09 14:13

谢谢大家帮忙,时间问题我先用上这个了

大芝麻 | 园豆:4 (初学一级) | 2013-11-11 10:52
其他回答(1)
0

一般ajax访问的都是处理过的json数据吧。

收获园豆:2
angelshelter | 园豆:9676 (大侠五级) | 2013-11-09 13:47

我是想访问别的网页的页面源码,然后读取其中的title标签,求指教

getjson 有办法获取其他网页的源码吗

支持(0) 反对(0) 大芝麻 | 园豆:4 (初学一级) | 2013-11-09 13:49

@大芝麻: 如果没有处理的知,那就是网页的整个源码。如果只是获取title应该还是比较简单了,如果想获取其它的信息,那就麻烦了,因为有些信息展示会依赖js的显示,但直接获取源码是不会渲染的。

支持(0) 反对(0) angelshelter | 园豆:9676 (大侠五级) | 2013-11-09 13:51

@angelshelter: 恩呢只要获取title就行了,具体应该怎么做了,小弟初学MVC,大侠能告诉具体怎么些吗

支持(0) 反对(0) 大芝麻 | 园豆:4 (初学一级) | 2013-11-09 13:53

@angelshelter: 我写成这个样子不行

<script>
var x=$.getJSON("/Picture/Index", function (json) {
alert(json);

}).responseText;
alert(x);
</script>

支持(0) 反对(0) 大芝麻 | 园豆:4 (初学一级) | 2013-11-09 13:53

@大芝麻: 你刚不是说跨域的吗,是跨域的就要完整的url呀

支持(0) 反对(0) angelshelter | 园豆:9676 (大侠五级) | 2013-11-09 13:55

@angelshelter: 我用了www.baidu.com也不行

支持(0) 反对(0) 大芝麻 | 园豆:4 (初学一级) | 2013-11-09 13:56

@大芝麻: 用IE或是谷歌浏览器,关键是要浏览器支持跨域访问,这涉及到安全问题。

支持(0) 反对(0) angelshelter | 园豆:9676 (大侠五级) | 2013-11-09 13:58

@angelshelter: 我就是用的谷歌的浏览器的,可是还不行,唉 弄了半天了

支持(0) 反对(0) 大芝麻 | 园豆:4 (初学一级) | 2013-11-09 14:01
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册