jquery抓取网页内容(如何直接将本地h5h5网页封装成APP,简单粗暴的方法 )

优采云 发布时间: 2021-12-02 17:07

  jquery抓取网页内容(如何直接将本地h5h5网页封装成APP,简单粗暴的方法

)

  最近在想怎么把本地的h5网页直接封装成一个APP,数据是通过jquery的ajax方法直接读取在线网页。但是由于安全问题,js无法跨域请求。网上给出了一些解决方法,但是太复杂了。花了很长时间研究透彻,好在我终于找到了一个简单粗暴的方法。首先,让我解释一下 cors-anywhere 是一个非常有趣的东西。网上最多的教程是解决微信公众号图片防盗链问题,但实际上完美解决了跨域网页代码读取问题。我开始的想法也是可以实现的。

  参考csdn博客,用户Mr_Sparta的文章。

  主要功能的js代码如下,需要引入jquery

  

$.ajaxPrefilter(function (options) { //对于cors-anywhere接口所定义的方法

if (options.crossDomain && jQuery.support.cors) {

var http = (window.location.protocol === 'http:' ? 'http:' : 'https:'); //访问的模式

options.url = http + '//cors-anywhere.herokuapp.com/' + options.url; //对于接口设置请求的带参数url

}

});

$.get( //定义ajax中的get()方法

'https://www.ruletree.club', //这里为请求的地址,我设置为我的博客

function (response) {

$("#html").html(content); //将获取到的内容写入id为content的html元素内

});

  html代码如下,我设置的很简单

  这里放置读取完成之前显示的内容,比如一个进度条或者转动的加载球

  最后,至于timeout等方法,我没有写。这不是很难。只需让js在页面加载后几秒内开始识别带有id内容的div中的内容即可。如果没有变化,就会显示超时信息,这对ajax来说是不够的我没试过原生的超时判断。

  你可以自己试试:

  下载链接:dq.zip

  喜欢 1

  报酬

  千山万水相亲相爱,赏赐好不好?报酬

  

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线