如何在Azure Scheduler中提交表单

时间:2017-07-06 07:08:15

标签: azure curl scheduler azure-scheduler

我在AWS上运行了一个Web服务(比如说 example.com )。我想每小时将数据传输到网络服务一次。我也有Azure帐户,我想使用Azure的Scheduler将数据传输到我的网络服务。

我可以通过 cUrl 使用我的网络服务:

curl -H "Content-Type = application/json" -XPOST http://example.com -F imurl=http://example_image.jpg

上面的 cUrl 语句使用POST方法提交表单。 我想做同样的事情,cUrl在Azure Scheduler中做了什么,但我无法弄清楚如何填充身体。

以下是我在Scheduler中所做的:

enter image description here

  

失败详情为:   Http Action - 来自主持人'52 .164.126.98'的回复:   'InternalServerError'响应标题:连接:关闭日期:星期四,   06 Jul 2017 08:16:17 GMT服务器:Apache / 2.4.18(Ubuntu)正文:    500   内部服务器错误

内部服务器错误

  服务器遇到内部错误,无法完成您的   请求。服务器过载或者出现错误   应用

当我检查 /var/log/apache2/error.log 时,它表示imurl未正确分配。

1 个答案:

答案 0 :(得分:0)

请考虑在此方案中使用Logic Apps而不是Scheduler。

使用Logic Apps,从重复触发器开始,然后执行HTTP操作,发送formdata,格式化HTTP请求的主体,如下所示:

let api = SpotifyAPIHandler()
fileprivate var albumList = [Album]()

private func loadAlbums() {
    api.getUsersAlbums() {
        albums in
        self.albumList = albums
        self.collectionView?.reloadData()
    }
}

或者,如果你有一个你试图调用的API的Swagger定义,只需将其提供给Logic Apps中的HTTP + Swagger操作,我们就会为你填充一个作曲家。