[ https://jira.fiware.org/browse/HELP-8991?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Fernando Lopez updated HELP-8991:
---------------------------------
Description:
Created question in FIWARE Q/A platform on 23-05-2016 at 10:05
{color: red}Please, ANSWER this question AT{color} https://stackoverflow.com/questions/37386670/http-post-request-gets-transformed-to-get-request
+Question:+
HTTP POST request gets transformed to GET request
+Description:+
How exactly does the WireCloud proxy work? We use the following code for a request via the WireCloud proxy:
MashupPlatform.http.makeRequest(url, {
method: 'POST',
forceProxy: true,
onSuccess: function (response) {
success(response);
},
onFailure: function (response) {
error(response);
},
onComplete: function () {
complete();
}
});
The browser network analysis shows that a POST request gets send to https://example.com/cdp/https/rest.example.com/path/to/service. Our webservice that gets called by the url however logs, that it receives a GET request.
The access log of our rest service hosted by a tomcat shows:
192.168.60.221 - - [26/May/2016:10:38:31 +0200] "GET /path/to/service HTTP/1.1" 405 1013
192.168.60.221 - - [26/May/2016:10:38:42 +0200] "POST /path/to/service HTTP/1.1" 204 -
The first call is done with the MashupPlatform.http.makeRequest call listed above, the second call is done with jQuery like this:
$.ajax({
type: "POST",
url: url,
data: null,
success: success
});
This works perfeclty fine when we set the CORS header in our webservice.
So what may be the reason, that WireClouds proxy does not work as expected?
was:
Created question in FIWARE Q/A platform on 23-05-2016 at 10:05
{color: red}Please, ANSWER this question AT{color} https://stackoverflow.com/questions/37386670/http-post-request-gets-transformed-to-get-request
+Question:+
HTTP POST request gets transformed to GET request
+Description:+
How exactly does the WireCloud proxy work? We use the following code for a request via the WireCloud proxy:
MashupPlatform.http.makeRequest(url, {
method: 'POST',
forceProxy: true,
onSuccess: function (response) {
success(response);
},
onFailure: function (response) {
error(response);
},
onComplete: function () {
complete();
}
});
The browser network analysis shows that a POST request gets send to https://example.com/cdp/https/rest.example.com/path/to/service. Our webservice that gets called by the url however logs, that it receives a GET request.
The access log of our rest service hosted by a tomcat shows:
192.168.60.221 - - [26/May/2016:10:38:31 +0200] "GET /path/to/service HTTP/1.1" 405 1013
192.168.60.221 - - [26/May/2016:10:38:42 +0200] "POST /path/to/service HTTP/1.1" 204 -
The first call is done with the MashupPlatform.http.makeRequest call listed above, the second call is done with jQuery like this:
$.ajax({
type: "POST",
url: url,
data: null,
success: success
});
This works perfeclty fine when we set the CORS header in our webservice.
So what may be the reason, that WireClouds proxy does not work as expected?
HD-Enabler: Wirecloud
> [fiware-stackoverflow] HTTP POST request gets transformed to GET request
> ------------------------------------------------------------------------
>
> Key: HELP-8991
> URL: https://jira.fiware.org/browse/HELP-8991
> Project: Help-Desk
> Issue Type: Monitor
> Components: FIWARE-TECH-HELP
> Reporter: Backlog Manager
> Labels: fiware, fiware-wirecloud, jquery, web-services
>
> Created question in FIWARE Q/A platform on 23-05-2016 at 10:05
> {color: red}Please, ANSWER this question AT{color} https://stackoverflow.com/questions/37386670/http-post-request-gets-transformed-to-get-request
> +Question:+
> HTTP POST request gets transformed to GET request
> +Description:+
> How exactly does the WireCloud proxy work? We use the following code for a request via the WireCloud proxy:
> MashupPlatform.http.makeRequest(url, {
> method: 'POST',
> forceProxy: true,
> onSuccess: function (response) {
> success(response);
> },
> onFailure: function (response) {
> error(response);
> },
> onComplete: function () {
> complete();
> }
> });
> The browser network analysis shows that a POST request gets send to https://example.com/cdp/https/rest.example.com/path/to/service. Our webservice that gets called by the url however logs, that it receives a GET request.
> The access log of our rest service hosted by a tomcat shows:
> 192.168.60.221 - - [26/May/2016:10:38:31 +0200] "GET /path/to/service HTTP/1.1" 405 1013
> 192.168.60.221 - - [26/May/2016:10:38:42 +0200] "POST /path/to/service HTTP/1.1" 204 -
> The first call is done with the MashupPlatform.http.makeRequest call listed above, the second call is done with jQuery like this:
> $.ajax({
> type: "POST",
> url: url,
> data: null,
> success: success
> });
> This works perfeclty fine when we set the CORS header in our webservice.
> So what may be the reason, that WireClouds proxy does not work as expected?
--
This message was sent by Atlassian JIRA
(v6.4.1#64016)
You can get more information about our cookies and privacy policies clicking on the following links: Privacy policy Cookies policy