我想在 Azure 逻辑应用中使用企业自定义字段 (ECF) 筛选和选择 Project Online 数据。我从开箱即用的 Project Online 连接器开始,以在项目发布时触发,然后列出项目和任务详细信息。
使用默认连接器,我可以返回项目数据,但它不包含 ECF 数据。查看生成的代码,Project Online 连接器使用/_api/ProjectServer。如果我使用/_api/Projectdata发出类似请求(在逻辑应用程序之外),我将获得 ECF 数据。
如果我使用修改后的 URL 和字段编辑逻辑应用代码,则会收到 404 错误。当我从逻辑应用程序中使用修改后的值发出请求时,似乎缺少一些我看不到的东西。
我的猜测是连接器正在限制对 /_api/Projectdata 的访问(尽管触发器本身正在使用此 URL)。
如果我直接从浏览器请求它,则以下返回我想要的数据:
https://tenant.sharepoint.com/sites/PWA/_api/Projectdata/Projects(guid'project_GUID')
这是逻辑应用程序中的原始输入:
{
"host": {
"connection": {
"name": "/subscriptions/subscription_GUID/resourceGroups/MyRG/providers/Microsoft.Web/connections/projectonline-1"
}
},
"method": "get",
"path": "/_api/Projectdata/Projects(guid'project_GUID')",
"queries": {
"siteUrl": "https://tenant.sharepoint.com/sites/PWA"
}
}
这是错误的原始输出:
{
"statusCode": 404,
"headers": {
"Access-Control-Allow-Methods": "GET, PUT, PATCH, DELETE, POST",
"Access-Control-Allow-Origin": "*",
"Access-Control-Max-Age": "3600",
"Access-Control-Expose-Headers": "*",
"Date": "Thu, 20 Sep 2018 16:58:42 GMT",
"Content-Length": "54",
"Content-Type": "application/json"
},
"body": {
"statusCode": 404,
"message": "Resource not found"
}
}
上述示例中的 URL 和 GUID 已被修改。