> On April 5, 2013, 5:46 p.m., Rohit Yadav wrote: > > As long as we have query based API, the overall base64 encoded payload in > > the url cannot exceed this limit as per a RFC (I recall discussing this > > issue on ML when I applied this feature from previous ports). > > If we handle POST request method on the ApiServlet class and accept > > userdate from POST request, this would work. Cheers. > > Venkata Siva Vijayendra Bhamidipati wrote: > Yes, the POST will be handled by ApiServlet's doPost() only, and the > userdata will need to be put into the POST body. I've put in a check to allow > the 2k limit to be exceeded only for userdata that comes in via a post > request in the deployVMcmd codepath. I think the length limit that a POST > body can reach is specified in the webserver configuration and independent of > CS as such, unless that limit is configured too low - in that case I'm > assuming the webserver wouldn't even pass on the request to reach the > ApiServlet in CS - is that the case? > > Rohit Yadav wrote: > No, it would the trick is to first understand how we parse and create > apiname and args from the GET query and I would prefer that we don't look for > only userdata in POST request, but create a map of apicmd and list of args > from the POST request generically so not just userdata any API can be called > or becomes POST-able HTTP request. Summary: Make every API POST-able, that > way any param could be sent via a POST request. Cheers.
Actually any POST command can be handled by the ApiServlet code - the map of api command and args list is created and supplied to the servlet by the web server. API calls issued as POST requests currently work with the mgmt server, so no changes are required to that part of the code. - Venkata Siva Vijayendra ----------------------------------------------------------- This is an automatically generated e-mail. To reply, visit: https://reviews.apache.org/r/10294/#review18713 ----------------------------------------------------------- On April 5, 2013, 10:22 p.m., Venkata Siva Vijayendra Bhamidipati wrote: > > ----------------------------------------------------------- > This is an automatically generated e-mail. To reply, visit: > https://reviews.apache.org/r/10294/ > ----------------------------------------------------------- > > (Updated April 5, 2013, 10:22 p.m.) > > > Review request for cloudstack, Chip Childers, Hugo Trippaers, Kelven Yang, > and Min Chen. > > > Description > ------- > > Please refer to > https://cwiki.apache.org/confluence/display/CLOUDSTACK/DeployVirtualMachine+userdata+enhancements > for a background on the requirements driving this patch. > > This patch hasn't been extensively tested yet, and I will update this request > with more info. I am uploading a first diff for initial review/comments. > > > This addresses bug CLOUDSTACK-1086. > > > Diffs > ----- > > api/src/com/cloud/vm/UserVmService.java 2c33d41 > api/src/org/apache/cloudstack/api/BaseCmd.java 78a2af3 > api/src/org/apache/cloudstack/api/command/user/vm/DeployVMCmd.java 21a45f8 > core/src/com/cloud/vm/UserVmVO.java a16eaf9 > server/src/com/cloud/api/ApiDispatcher.java 925d90a > server/src/com/cloud/api/ApiServer.java d842819 > server/src/com/cloud/api/ApiServerService.java 12d8b52 > server/src/com/cloud/api/ApiServlet.java 03bfb5f > server/src/com/cloud/vm/UserVmManagerImpl.java 24bce8b > server/test/com/cloud/vm/MockUserVmManagerImpl.java dd8dd83 > setup/db/db/schema-410to420.sql ab9df05 > > Diff: https://reviews.apache.org/r/10294/diff/ > > > Testing > ------- > > > Thanks, > > Venkata Siva Vijayendra Bhamidipati > >