VUE项目嵌入微信公众号文章URL
因项目需求需要引入微信公众号的文章页面,使用iframe标签引入会导致微信公众号的css和js引用发送跨域报错
解决思路
1:在后端直接请求微信公众号的文章URL,执行css和js后的HTML返回到前端
2:前端直接v-html显示到页面上即可
后端代码
引入包:
net.sourceforge.htmlunit
htmlunit
2.45.0
Java代码:
@GetMapping("news")
public String mpWeiXin(){
//微信文章的URL地址
String newsUrl = "";
WebClient webClient = new WebClient(BrowserVersion.CHROME);//新建一个模拟谷歌Chrome浏览器的浏览器客户端对象
webClient.getOptions().setThrowExceptionOnScriptError(false);//当JS执行出错的时候是否抛出异常, 这里选择不需要
webClient.getOptions().setThrowExceptionOnFailingStatusCode(false);//当HTTP的状态非200时是否抛出异常, 这里选择不需要
webClient.getOptions().setActiveXNative(false);
webClient.getOptions().setCssEnabled(true);//是否启用CSS, 因为需要展现页面, 所以需要启用
webClient.getOptions().setJavaScr