[ https://issues.apache.org/jira/browse/MESOS-3920?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Neil Conway updated MESOS-3920: ------------------------------- Description: Right now, the "reserve" and "unreserve" endpoints work as follows: 1. slaveID and resources are sent as two separate key-value pairs in the body of the request, which is URL-encoded ({{application/x-www-form-urlencoded}} media type). 2. resources is itself a JSON document. This is a bit weird: it would more idiomatic to send a single JSON document (using content-type {{a 2. It is weird to mix query parameters (slaveID, resources) with JSON-encoded values. Why not just post a single JSON document with all the information required for a dynamic reservation? Obviously, there are some backward compatibility concerns if we want to change this. was: Right now, the "reserve" and "unreserve" endpoints work as follows: 1. slaveID is sent as a separate query parameter 2. the resources to reserve are sent as the "reserve" query parameter, where the value is encoded in JSON This is weird, for two reasons: 1. It is more typical for POST to send the content of the new document in the request body, not as parameters to the query string (e.g., https://stackoverflow.com/questions/14551194/how-are-parameters-sent-in-an-http-post-request) 2. It is weird to mix query parameters (slaveID, resources) with JSON-encoded values. Why not just post a single JSON document with all the information required for a dynamic reservation? Obviously, there are some backward compatibility concerns if we want to change this. > Considering changing /reserve, /unreserve endpoint syntax > --------------------------------------------------------- > > Key: MESOS-3920 > URL: https://issues.apache.org/jira/browse/MESOS-3920 > Project: Mesos > Issue Type: Bug > Reporter: Neil Conway > Priority: Minor > Labels: http, mesosphere, reservations > > Right now, the "reserve" and "unreserve" endpoints work as follows: > 1. slaveID and resources are sent as two separate key-value pairs in the body > of the request, which is URL-encoded ({{application/x-www-form-urlencoded}} > media type). > 2. resources is itself a JSON document. > This is a bit weird: it would more idiomatic to send a single JSON document > (using content-type {{a > 2. It is weird to mix query parameters (slaveID, resources) with JSON-encoded > values. Why not just post a single JSON document with all the information > required for a dynamic reservation? > Obviously, there are some backward compatibility concerns if we want to > change this. -- This message was sent by Atlassian JIRA (v6.3.4#6332)