网址重写和ajax调用

时间:2014-04-04 17:17:46

标签: c# asp.net ajax

我在使用url rewrite删除页面扩展(.aspx)时从ajax调用web方法([WebMethod])时出现问题。

我的ajax运行良好,重写如下:

" mypage.aspx / UpdateOffer"

但是当我使用重写时,我得到" parsererror"来自ajax的消息

所以我试过这个:

"我的空间/ UpdateOffer"

然后我得到错误" unfind"

我也试过了(正如其他人所说): PageMethods.set_path(PageMethods.get_path()+' .aspx');

然后:" mypage.aspx / UpdateOffer"  失败。

还试过:" mypage / UpdateOffer"

失败。

那么,怎么能没有错误呢?

TY

编辑:我的ajax:

PageMethods.set_path(PageMethods.get_path() + '.aspx');
$.ajax({
    url: "myPage.aspx/UpdateOffer",
    type: "POST",
    contentType: "application/json;charset=utf-8",
    dataType: "json",

。 。 。

重写配置:

  <system.webServer>
    <rewrite>
      <rules>
        <rule name="extensionless" stopProcessing="true">
          <match url="(.*)\.aspx" />
          <action type="Redirect" url="{R:1}" redirectType="Permanent" />
        </rule>
        <rule name="removeextension" enabled="true">
          <match url=".*" negate="false" />
          <conditions>
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
            <add input="{URL}" pattern="(.*)\.(.*)" negate="true" />
          </conditions>
          <action type="Rewrite" url="{R:0}.aspx" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>

0 个答案:

没有答案