如何处理多个带有蚂蚁缺失链接的成功状态代码



我正在使用缺少链接的http任务将构建工件推送到我们的工件存储库。 问题是,如果我推送一个新工件,我会得到 HTTP 响应代码 201。 如果我推过现有的工件,我会得到 204。 这两者都在我的上下文中是有效的。 但 <http>expected 属性仅接受单个响应代码。 我尝试了expected="201,204"expected="201 204"但是在执行该 ant 节点时出现NumberFormatException。 有没有办法同时允许 201 和 204,但将任何其他响应视为失败?

不,不是像你尝试的那样直接。 您必须修改并重建它。 我检查了代码,expected是一个int.正如你发现的那样,它不会采取列表。

这将是一个丑陋的解决方法,但您可以设置failonunexpected=false.

如果通过设置 failonunexpected=false 来继续,无论 HTTP 返回是什么,然后把状态放在一个属性statusProperty="http.status"中,你可以使用它来使构建失败,如果http.status不是201 or 204,你可以使用它来使构建失败。 像这样:

<condition property="http.status.ok">
  <matches pattern="20[14]" string="${http.status}"/>
</condition>
<fail message="Bad http status ${http.status}" unless="http.status.ok"/>

告诉我有关您的工件存储库的更多信息。 是Maven还是常春藤布局? 你可以利用常春藤的发布任务。

相关内容

  • 没有找到相关文章

最新更新