zoukankan      html  css  js  c++  java
  • 发起自定义http请求

     对firefox的插件poster很感兴趣,想通过自己写的本地页面脚本实现,百度一下说得最多的是ajax,试了一下不行

    原因如下:出于安全原因,浏览器对页面中的ajax请求(XMLHTTPRequest)有同源策略的限制。


    如果两个页面的协议、域名和端口是完全相同的,那么它们就是同源的。当前加载页面只能发出同源的ajax请求。
     
    这就跟我想的不一样了,因为poster这个插件是随便发的,怎么办呢,继续百度吧
     
     
    幸运的是,居然搜到了一个很稀罕的js对象,WinHttp.WinHttpRequest.5.1,为什么说稀罕呢,因为关于这东西几乎没中文资料,只有msdn那有说明
    这东西可以用来发包,而且可以加http头域,感觉不错,给个例子吧
     

    var obj = new ActiveXObject("WinHttp.WinHttpRequest.5.1");
    obj.Open("POST", url, false);
    obj.Option(4) = 13056;
    obj.Option(6) = false; //可以不自动跳转,截取服务端返回的302状态。
    obj.setRequestHeader("Content-Type","application/x-www-form-urlencoded"); //加头域
    obj.setRequestHeader("Referer", "http://support.wechat.com");var param = "uin=abcd1234"; 

    obj.Send(param); 

    var result=obj.responseText;

    这个对象其实还有很多属性和方法,例如取出响应包的头域(getrequestheader),但是由于只有英文的说明,感兴趣的自己去msdn查吧

  • 相关阅读:
    BZOJ1143: [CTSC2008]祭祀river
    接口自动化测试平台-接入持续集成jenkins
    mac OS npm 安装/卸载失败 权限问题解决方案
    初入React源码(一)
    初入React源码(一)
    mac OS git关联github
    重识TCP/IP协议族与HTTP基础
    重识TCP/IP协议族与HTTP基础
    Visual Studio Code mac OS 安装 中文简体语言包
    C#加密类
  • 原文地址:https://www.cnblogs.com/encode/p/3002034.html
Copyright © 2011-2022 走看看