从MSBuild脚本发出HTTP请求

时间:2011-03-17 13:26:22

标签: msbuild

我正在寻找一种方法从msbuild脚本中点击Web应用程序/ restful服务URL以触发远程过程。 除了调用外部应用程序之外,我有什么方法可以做到这一点? 理想情况下,如果服务返回了http 200

的其他内容,我正在寻找一种方法来打破构建序列

2 个答案:

答案 0 :(得分:11)

我经常使用MSBuild Community Tasks。他们为MSBuilds添加了额外的任务。有一个HttpRequest任务,从它的外观,它做你想要的。

<HttpRequest Url="http://<mydomain.com>/index.php?checkdb=1" 
                EnsureResponseContains="Database upgrade check completed successfully." 
                FailOnNon2xxResponse="true" />

希望这有帮助

答案 1 :(得分:6)

在MSBuild社区任务的第4版中,HttpRequest任务被 HttpWebRequest 替换为不同的语法:

<MSBuild.ExtensionPack.Web.HttpWebRequest
        TaskAction="GetResponse" Url="http://www.freetodev.com">
    <Output TaskParameter="Response" ItemName="ResponseDetail"/>
    <Output TaskParameter="Status" PropertyName="ResponseStatus"/>
</MSBuild.ExtensionPack.Web.HttpWebRequest>