当前位置: 首页 > news >正文

网站策划书的编写百度竞价优化

网站策划书的编写,百度竞价优化,武安网站设计公司,做任务的兼职网站如果服务器是https的#xff0c;访问受限怎么办#xff1f;有两种方法#xff0c;一种是接受一切证书个人官方正式非正式#xff0c;当然这样就牺牲了安全性#xff0c;网上方法很多#xff0c;我现在教大家如何去验证crt文件 首先服务器是https的#xff0c;必然有几个…如果服务器是https的访问受限怎么办有两种方法一种是接受一切证书个人官方正式非正式当然这样就牺牲了安全性网上方法很多我现在教大家如何去验证crt文件 首先服务器是https的必然有几个文件比方说apache版本的就有xx.key xx.chain.crt xx.public.crt没有这三个文件你是不搞不出来https的这是官方申请来的文件具有权威性 当然几个文件都有作用包括CA认证的我这次只用到public.crt文件 1、首先将文件copy到工程的raw文件夹下稍后引用 这里说一下设置Setting里也有一个载入accepted certificates(不知道在设置顶上可以搜)里面也可以引入时间有现我就试了一下发现不行就没试估计还有别的地方要改这块本文暂不涉及 2、验证权限要在所有访问之前 比如App启动的时候或者在登录的时候由于要用到一个Context要传过来要用它去找文件所以我把他放在登录里调用一次即可核心内容-TrustManager public static void handleSSLHandshake(Context cont) {try {InputStream inputStream cont.getResources().openRawResource(R.raw.web_public);//这就是开头raw里的文件CertificateFactory certificateFactory CertificateFactory.getInstance(X.509);X509Certificate certificate (X509Certificate) certificateFactory.generateCertificate(inputStream);// 创建信任管理器并添加证书TrustManager[] trustAllCerts new TrustManager[]{new X509TrustManager() {public X509Certificate[] getAcceptedIssuers() {final X509Certificate[] x509Certificates new X509Certificate[]{certificate};return x509Certificates; // 返回包含您的证书的数组}Overridepublic void checkClientTrusted(X509Certificate[] certs, String authType) throws CertificateException {// 在这里进行您的自定义验证逻辑例如检查证书颁发机构、有效期等//No Used }Overridepublic void checkServerTrusted(X509Certificate[] certs, String authType) throws CertificateException {// 在这里进行您的自定义验证逻辑例如检查证书颁发机构、有效期等// 如果更换证书此处需要修改for (X509Certificate cert : certs) {if (!cert.getIssuerDN().getName().equals(CNcompanyname,OUwww.domain.com,ODigiCert Inc,CUS)) {//Log.d(TAG,cert.getIssuerDN().getName());//查看把上一步改为你自已的throw new CertificateException(Invalid server certificate);}if (cert.getNotBefore().after(new Date())) {throw new CertificateException(Server certificate not valid before cert.getNotBefore());}if (cert.getNotAfter().before(new Date())) {throw new CertificateException(Server certificate not valid after cert.getNotAfter());}}}}};// 创建SSL上下文并初始化信任管理器SSLContext sc SSLContext.getInstance(TLS);sc.init(null, trustAllCerts, new SecureRandom());// 设置默认的SSL套接字工厂和主机名验证器HttpsURLConnection.setDefaultSSLSocketFactory(sc.getSocketFactory());HttpsURLConnection.setDefaultHostnameVerifier(new HostnameVerifier() {Overridepublic boolean verify(String hostname, SSLSession session) {return true; // 可以根据需要更改主机名验证逻辑}});} catch (Exception e) {e.printStackTrace();} }这里面可验证的东西很多包括公司名、国家、有效期等等可以做到一项有不一致立马拒绝提升安全性。但是我要说一下 1checkClientTrusted checkServerTrusted这两个区别如果你只是访问https接口的话其实只有checkServerTrusted起作用另一个是反向的验证有机会的可以测试一下 2import包含部分哪里提示红色的直接按提示去包含个包就好了没有非标准库的内容放心使用 3参数Context是上下文目的是找文件路径的如果你在Main或Activity中调用直接给个this或都MyActivity.this这个大家都会。 4一定要加上网络权限别忘了-androidmanifest 关于android高版本9.0你可能需要增加一条策略否则容易报错一般错误都会定位在 DataOutputStream wr new DataOutputStream(con.getOutputStream());这个附近如果一直报错说明版本高了安全策略变了执行下面几句话即可 if (Build.VERSION.SDK_INT Build.VERSION_CODES.P) {StrictMode.ThreadPolicy policy new StrictMode.ThreadPolicy.Builder().permitAll().build();StrictMode.setThreadPolicy(policy); }//如果报错这几句也要独立执行一下放代码前头 你可以运行handleSSLHandshakeMyActivity.this了;至此握手工作已经完成。 接下来提供点https远程接口的访问模板供大家改着用 try {URL obj new URL(https://mydomain.com/api);HttpsURLConnection con (HttpsURLConnection) obj.openConnection();con.setRequestMethod(POST);con.setRequestProperty(Content-Type, application/x-www-form-urlencoded);con.setRequestProperty(Authorization, testMe);String bodyParams param1 test123;con.setDoOutput(true);DataOutputStream wr new DataOutputStream(con.getOutputStream());wr.writeBytes(bodyParams);wr.flush();wr.close();int responseCode con.getResponseCode();BufferedReader in new BufferedReader(new InputStreamReader(con.getInputStream()));String inputLine;StringBuffer response new StringBuffer();while ((inputLine in.readLine()) ! null) {response.append(inputLine);}in.close();Log.i(TAG, URLDecoder.decode(response.toString(), UTF-8)); } catch (IOException e) {e.printStackTrace(); } 这样就能该问远程接口了本地会输出一个Log远程返回值如果你把网址换了就会提示握手错误防劫持防攻击让更加安全更多内容看里面注释祝你成功 说句心里话这玩意是很繁琐是难者不会会者不难的事细心按我说的来会成功的网上大部分不准的太多针对老版本很难解决问题调试的Bug连AI都有点懵所以写个文章供以后查阅
http://www.eeditor.cn/news/120140/

相关文章:

  • 上海seo网站推广公司深圳软件开发定制公司
  • 免费网站建设哪个好?网站开发部
  • 网站开发工程师培训班惠阳网站制作公司
  • 自己做视频的网站吗订货系统
  • 仿腾讯视频网站四川水利工程造价信息网
  • 网站做镜像是什么国际新闻头条
  • 网站里面的导航图标怎么做的可信赖的镇江网站建设
  • 那一个网站可以教做甜品的深圳推广系统
  • 东莞哪里有网站制作公司阿里云域名注册平台
  • 做淘宝客如何建自己的网站成都网站建设常凡云
  • 邢台专业网站建设做公众号可以看的网站
  • seo站长教程云南鼎润房地产开发有限公司网页设计
  • 网站开发 会员模块百度信息流投放在哪些平台
  • 定制您的专属建站方案查网站死链必用工具
  • 中小企业网站建设与推广论文网站开发工程师 面试英语
  • 无锡制作网站制作品牌网页
  • 海城做网站公司wordpress 支持代码高亮的插件
  • 哈尔滨flash网站网页设计建网站语言
  • 超低价的锦州网站建设医疗网站建设流程
  • 冒险岛2做乐谱网站惠州网站建设公司推荐乐云seo
  • 网站开发和软件开发房屋平面图设计软件免费
  • 怎么增加网站浏览量北京seo顾问服务公司
  • 深圳做分销商城网站嘉兴做微网站
  • 怎么建卡盟网站wordpress上传至哪个目录下
  • 群推广网站淘宝网络营销方式
  • 学习网站的设置和网页的发布深圳科技公司排名10
  • 网站在当地做宣传wordpress博客修改
  • 北京网站开发学习机关门户网站 建设 方案
  • 建设银行官网的网站首页东莞网站制作公司联系方式
  • 求个没封的w站2021不用下载wordpress导航菜单