Skip to content
  • Austin McKinley's avatar
    Raise warning when accidentally submitting Conduit parameters as a JSON-encoded body · 05a94741
    Austin McKinley authored
    Summary: See T12447 for discussion. It is reasonably intuitive to try and pass Conduit parameters via a JSON-encoded HTTP body, but if you do so, you'll get an unhelpful messsage about how method so-and-so does not accept a parameter named "your_entire_json_body". Instead, detect this mistake and advise developers to use form-encoded parameters.
    
    Test Plan:
    Got a better error when attempting to make Conduit calls from React code. Tested the following additional invocations of Conduit and got the expected results without an error:
    
    * From the Conduit UI
    * With cURL:
    ```
    ~ $ curl http://local.phacility.com:8080/api/conpherence.querythread \
    >     -d api.token=api-tvv2zb565zrtueab5ddprmpxvrwb \
    >     -d ids[0]=1
    ```
    * With `arc call-conduit`:
    ```
    ~ $ echo '{
    >   "ids": [
    >     1
    >   ]
    > }' | arc call-conduit --conduit-uri http://local.phacility.com:8080/ --conduit-token api-tvv2zb565zrtueab5ddprmpxvrwb conpherence.querythread
    ```
    
    Reviewers: epriestley
    
    Reviewed By: epriestley
    
    Subscribers: Korvin
    
    Differential Revision: https://secure.phabricator.com/D19944
    05a94741