【问题标题】:How can I make a POST request to my Dynamics CRM from Postman?如何从 Postman 向我的 Dynamics CRM 发出 POST 请求?
【发布时间】:2019-11-21 07:31:31
【问题描述】:

我无法成功向我的 Dynamics Health 365 CRM 发出 HTTPS 发布请求。

我的目标是通过发布请求更新特定联系人的“描述”字段。

我可以通过将他们的 contactid 传递给 /contacts 路径来成功地为这个特定的联系人发出 Get 请求。

get req

但是,我无法在此 URI 上为我的 CRM 站点发出 Post 请求。我一直收到“405 - 不允许的方法”响应。

post req body

这是我设置的标题。在为某个联系人向某个字段添加内容时,我是否做错了什么?

post req headers

我也尝试使用 Put 请求,但遇到相同的 405 错误。

我不知道有关 Dynamics CRM Web API 文档的任何指南。如果有任何关于向 Dynamics CRM 发出 Post 请求的具体内容,我将非常乐意查看。我只是在寻找这方面的任何指导,因为我觉得过去几天我在这方面完全碰壁了。有什么帮助,谢谢!!

  • 这是一个动态 CRM 门户
  • 我可以在同一个 URL 上发出 Get 请求
  • 我想我需要在请求的正文中设置我要更新的数据的键值对,但这似乎不正确。要么这样,要么我没有做一些初步步骤,以便将帖子正文内容应用于我传递的联系人。

我希望联系人数据中的“描述”字段更新为我设置的值。请参阅我的帖子请求正文的第二张图片。

【问题讨论】:

    标签: dynamics-crm postman dynamics-365


    【解决方案1】:

    我建议您查看文档,它有一个 Postman 特定部分和一些有用的示例。

    关于您的问题,更新使用 HTTP PATCH 动词(POST 用于创建操作):

    PATCH [Organization URI]/api/data/v9.0/accounts(00000000-0000-0000-0000-000000000001) HTTP/1.1  
    Content-Type: application/json  
    OData-MaxVersion: 4.0  
    OData-Version: 4.0  
    
    {  
        "name": "Updated Sample Account ",  
        "description": "This is the updated description of the sample account"
    }
    

    如果您尝试更新单个属性,则可以像以前一样使用 PUT,但 URL 必须包含属性名称(在这种情况下,记录 ID 后面是 /name):

    PUT [Organization URI]/api/data/v9.0/accounts(00000000-0000-0000-0000-000000000001)/name HTTP/1.1  
    Content-Type: application/json  
    OData-MaxVersion: 4.0  
    OData-Version: 4.0  
    
    {"value": "Updated Sample Account Name"}  
    

    更多关于documentation的更新操作。

    您也可以查看我前段时间在GitHub 创建的 Postman 集合模板。

    【讨论】:

    • 费德里科,非常感谢!我只是不知道我需要使用“补丁”而不是“发布”。起初,这是我的思路,但我认为“放置”是要做的事情。我以前从未使用过补丁。感谢您帮助这个菜鸟:P:D
    猜你喜欢
    • 2017-06-06
    • 2020-05-23
    • 2019-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-02-11
    相关资源
    最近更新 更多