• IIS程序POST请求被触发两次的灵异事件


    在CORS .net 跨域解决方案里,是这样介绍的(http://jingyan.baidu.com/article/03b2f78c190ad25ea237ae33.html)

    同一个请求需要两个相同请求地址的方法,一个标记为“POST”,另一个标记为“OPTIONS“,实体方法为标记”POST“的方法,这 里”OPTIONS“方法不需要做任何逻辑操并且返回值为void即可(其实OPTIONS请求为浏览器的校验,发带参数的POST请求时浏览器会先发一 个OPTIONS请求,检验request 头信息和response头信息一致后才真正发起POST请求)

    抓包发现,确实如此,浏览器产生了两个请求,OPTIONS service/service.php HTTP/1.1和POST /service/service.php HTTP/1.1

    本想着像文中说的那样,让请求OPTIONS时,直接返回void,但是在看到配置php的时候,可以直接限制动作。试了一下,果然有用,现在ajax跨域,php程序只执行一次了。

    iis里配置方法如下:找到程序站点,也可以选择服务器设置,点右边的处理程序映射,找到(aspx或者ashx)点编辑,在弹出对话框里,点请求限制,再选 谓词,点下面谓词之一,按照提示的输入GET,POST,我是之前为了省事,直接是默认选项(全部谓词),所以才遇到了这个问题。

    IIS7如下

    IIS6如下

    本文借鉴前人经验并进行补充

  • 相关阅读:
    列表标签
    超链接标签
    HTML:如何把一个无序列表转换成横向菜单
    window界面控制
    C++文件读写
    宽度,对齐方式的设置
    取出一个整数的每一位
    求两个数的最大公约数
    判断素数
    天才ACM ---待复习标志
  • 原文地址:https://www.cnblogs.com/ff111/p/6552533.html
Copyright © 2020-2023  润新知