Angularjs web api重写url规则,用于带参数的url

Angularjs web api重写url规则,用于带参数的url,angularjs,url-rewriting,web-config,page-refresh,Angularjs,Url Rewriting,Web Config,Page Refresh,我正在使用Angularjs和.Net的web api开发SPA应用程序。这一切似乎都是可行的,为了能够刷新我的页面,我在我的web.config文件中添加了如下规则,当我刷新有参数的详细页面时,它们都是可行的,类似这样的http://domain/traveldetail/135。请告知我应如何处理此问题: Web.config的重写部分: <rewrite> <rules> <rule name="TravelList" st

我正在使用Angularjs和.Net的web api开发SPA应用程序。这一切似乎都是可行的,为了能够刷新我的页面,我在我的web.config文件中添加了如下规则,当我刷新有参数的详细页面时,它们都是可行的,类似这样的
http://domain/traveldetail/135
。请告知我应如何处理此问题:

Web.config的重写部分:

    <rewrite>
      <rules>
        <rule name="TravelList" stopProcessing="true">
          <match url="^travellist" />
          <action type="Rewrite" url="/" />
        </rule>
        <rule name="TravelDetail" stopProcessing="true">  <!--NOT WORKING-->
          <match url="^traveldetail/:travelId" />
          <action type="Rewrite" url="/" />
        </rule>
        <rule name="AdvancedSearch" stopProcessing="true">
          <match url="^advancedsearch" />
          <action type="Rewrite" url="/" />
        </rule>
        <rule name="CreditCardMatcher" stopProcessing="true">
          <match url="^creditcardmatcher" />
          <action type="Rewrite" url="/" />
        </rule>
        <rule name="ApprovalGroups" stopProcessing="true">
          <match url="^approvalgroups" />
          <action type="Rewrite" url="/" />
        </rule>
        <rule name="Help" stopProcessing="true">
          <match url="^help" />
          <action type="Rewrite" url="/" />
        </rule>
      </rules>
    </rewrite>


它不起作用,因为
url=“^traveldetail/:travelId”
中的
:travelId
是AngularJS的参数表示法,不是有效的正则表达式


将其更改为以下内容:
url=“^traveldetail/(.+)”
,它应该可以工作。

我也遇到了同样的问题。你有什么发现吗?我被调到另一个项目,所以我没有机会进一步研究