android webview内的post请求(点击按钮)添加header行不通
来源:互联网 发布:淘宝售后流程图 编辑:程序博客网 时间:2024/06/05 06:23
处理WebView中的非超链接请求(如Ajax请求):
有时候需要加上请求头,但是非超链接的请求,没有办法再shouldOverrinding中拦截并用webView.loadUrl(String url,HashMap headers)方法添加请求头
目前用了一个临时的办法解决:
首先需要在url中加特殊标记/协议, 如在onWebViewResource方法中拦截对应的请求,然后将要添加的请求头,以get形式拼接到url末尾
在shouldInterceptRequest()方法中,可以拦截到所有的网页中资源请求,比如加载JS,图片以及Ajax请求等等
Ex:
[java] view plaincopy- @SuppressLint("NewApi")
- @Override
- public WebResourceResponse shouldInterceptRequest(WebView view,String url) {
- // 非超链接(如Ajax)请求无法直接添加请求头,现拼接到url末尾,这里拼接一个imei作为示例
- String ajaxUrl = url;
- // 如标识:req=ajax
- if (url.contains("req=ajax")) {
- ajaxUrl += "&imei=" + imei;
- }
- return super.shouldInterceptRequest(view, ajaxUrl);
- }
- Android如何拦截WebView之中的Post或者Get请求
- WebView webView = (WebView) findViewById(R.id.web_view);
- webView.setWebViewClient(new WebViewClient() {
- @Override
- public boolean shouldOverrideUrlLoading(WebView view, String url) {
- Toast.makeText(getApplicationContext(),
- "WebViewClient.shouldOverrideUrlLoading",
- Toast.LENGTH_SHORT);
- view.loadUrl(url);
- return true;
- }
- @Override
- public void onPageStarted(WebView view, String url, Bitmap favicon) {
- Toast.makeText(getApplicationContext(),
- "WebViewClient.onPageStarted",
- Toast.LENGTH_SHORT).show();
- //这儿可以截获网页的URL,可以都URL进行分析。
- //本例子之中是分析从通过RenRen登录成功后返回的access_token.
- if (url.contains("graph.renren.com/oauth/login_success.html")) {
- int start = url.indexOf("access_token") + "access_token=".length();
- int end = url.indexOf("expires_in") - 1;
- accessToken = url.substring(start, end);
- }
- super.onPageStarted(view, url, favicon);
- }
- });
- webView.loadUrl(myUrl);
0 0
- android webview内的post请求(点击按钮)添加header行不通
- WebView内使用post加载url并添加header
- Android WebView POST请求详解
- Android WebView POST请求详解
- QMainWindow内直接添加Layout行不通
- 在QMainWindow内直接添加Layout行不通
- Android如何拦截WebView之中的Post或者Get请求
- Android Retrofit2&OkHttp3添加统一的请求头Header
- Android Retrofit2&OkHttp3添加统一的请求头Header
- Android Retrofit2&OkHttp3添加统一的请求头Header
- Android Retrofit2&OkHttp3添加统一的请求头Header
- Android Retrofit2&OkHttp3添加统一的请求头Header
- Android WebView添加Cookie和添加请求的头
- Android alertdialog的自定义添加按钮和添加点击
- Android通过Post请求网页(WebView)
- android 监听按钮的点击事件 匿名内部类监听按钮点击事件
- android WebView上传文件点击取消后按钮不能再次响应点击的解决办法
- Android内嵌网页webview点击其中的链接跳转到我们应用内的Activity
- java运行失败原因
- php与mysql通讯那点事
- 配置Apache将自己的电脑做服务器使局域网内的电脑访问自己的主机
- 双十一“败家”榜:广东土豪依然不差钱
- 架构
- android webview内的post请求(点击按钮)添加header行不通
- 正则表达式取括号内的值 按第一个空格分割字符串
- 纠结
- cocos2d学习之CCDirector
- Android 唯一识别码
- 重磅发布码农界的第一张吉他专辑小样
- eclipse 的常用插件
- 推荐!国外程序员整理的 C++ 资源大全
- unicode在线转中文