Getting “the server responded with a status of 405 (Method Not Allowed)” issue while calling web api...
up vote
0
down vote
favorite
I am getting "the server responded with a status of 405 (Method Not Allowed)" issue while calling the web API service post method from Angular 4. CORS is handled in the code but it is giving the cross-origin error.
bellow is detail.
Web API Service method
[HttpPost]
public PostCodeListViewModel PostCodeSearch([FromBody]ArrayList motorPostCodesCAT)
{
var result = new PostCodeListViewModel();
.......
return result;
}
Response header in Global.asax
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
if (HttpContext.Current.Request.HttpMethod == "OPTIONS")
{
HttpContext.Current.Response.AddHeader("Cache-Control", "no-cache");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept, tkn,authorization");
HttpContext.Current.Response.AddHeader("Access-Control-Max-Age", "1728000");
HttpContext.Current.Response.End();
}
Angular service call
this.http.post(this.HostUrl + this.api_ReferralPostCodeDisableEnableURL, JSON.stringify(postcodeEmbargo), this.getStandardRequestOptions()).map((res) => { return res.json(); });
Angular request header
protected getStandardRequestOptions(contentType: string = null, existingOptions?: RequestOptions): RequestOptions {
if (!contentType) {
contentType = 'application/json';
}
let options = this.setAppendRequestHeader(existingOptions, 'Accept', contentType);
options = this.setAppendRequestHeader(options, 'Content-Type', contentType);
options = this.setAppendRequestHeader(options, 'Authorization', `Bearer ${this.authenticationToken}`);
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Origin', '*');
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Headers', 'accept, authorization, Content-Type');
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
return options;
}
error getting on browser console
Image for Error on browser console
What I understand is that browser is making OPTIONS preflight request for CORS check but we have handled this in golobla.asax and earlier it was working perfectly fine the problem started when I have Added Angular Google Map(AGM) into the code.
Any Help would be appreciated.
Thanks in advance.
angular cors asp.net-web-api2 angular-google-maps http-status-code-405
add a comment |
up vote
0
down vote
favorite
I am getting "the server responded with a status of 405 (Method Not Allowed)" issue while calling the web API service post method from Angular 4. CORS is handled in the code but it is giving the cross-origin error.
bellow is detail.
Web API Service method
[HttpPost]
public PostCodeListViewModel PostCodeSearch([FromBody]ArrayList motorPostCodesCAT)
{
var result = new PostCodeListViewModel();
.......
return result;
}
Response header in Global.asax
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
if (HttpContext.Current.Request.HttpMethod == "OPTIONS")
{
HttpContext.Current.Response.AddHeader("Cache-Control", "no-cache");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept, tkn,authorization");
HttpContext.Current.Response.AddHeader("Access-Control-Max-Age", "1728000");
HttpContext.Current.Response.End();
}
Angular service call
this.http.post(this.HostUrl + this.api_ReferralPostCodeDisableEnableURL, JSON.stringify(postcodeEmbargo), this.getStandardRequestOptions()).map((res) => { return res.json(); });
Angular request header
protected getStandardRequestOptions(contentType: string = null, existingOptions?: RequestOptions): RequestOptions {
if (!contentType) {
contentType = 'application/json';
}
let options = this.setAppendRequestHeader(existingOptions, 'Accept', contentType);
options = this.setAppendRequestHeader(options, 'Content-Type', contentType);
options = this.setAppendRequestHeader(options, 'Authorization', `Bearer ${this.authenticationToken}`);
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Origin', '*');
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Headers', 'accept, authorization, Content-Type');
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
return options;
}
error getting on browser console
Image for Error on browser console
What I understand is that browser is making OPTIONS preflight request for CORS check but we have handled this in golobla.asax and earlier it was working perfectly fine the problem started when I have Added Angular Google Map(AGM) into the code.
Any Help would be appreciated.
Thanks in advance.
angular cors asp.net-web-api2 angular-google-maps http-status-code-405
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
I am getting "the server responded with a status of 405 (Method Not Allowed)" issue while calling the web API service post method from Angular 4. CORS is handled in the code but it is giving the cross-origin error.
bellow is detail.
Web API Service method
[HttpPost]
public PostCodeListViewModel PostCodeSearch([FromBody]ArrayList motorPostCodesCAT)
{
var result = new PostCodeListViewModel();
.......
return result;
}
Response header in Global.asax
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
if (HttpContext.Current.Request.HttpMethod == "OPTIONS")
{
HttpContext.Current.Response.AddHeader("Cache-Control", "no-cache");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept, tkn,authorization");
HttpContext.Current.Response.AddHeader("Access-Control-Max-Age", "1728000");
HttpContext.Current.Response.End();
}
Angular service call
this.http.post(this.HostUrl + this.api_ReferralPostCodeDisableEnableURL, JSON.stringify(postcodeEmbargo), this.getStandardRequestOptions()).map((res) => { return res.json(); });
Angular request header
protected getStandardRequestOptions(contentType: string = null, existingOptions?: RequestOptions): RequestOptions {
if (!contentType) {
contentType = 'application/json';
}
let options = this.setAppendRequestHeader(existingOptions, 'Accept', contentType);
options = this.setAppendRequestHeader(options, 'Content-Type', contentType);
options = this.setAppendRequestHeader(options, 'Authorization', `Bearer ${this.authenticationToken}`);
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Origin', '*');
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Headers', 'accept, authorization, Content-Type');
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
return options;
}
error getting on browser console
Image for Error on browser console
What I understand is that browser is making OPTIONS preflight request for CORS check but we have handled this in golobla.asax and earlier it was working perfectly fine the problem started when I have Added Angular Google Map(AGM) into the code.
Any Help would be appreciated.
Thanks in advance.
angular cors asp.net-web-api2 angular-google-maps http-status-code-405
I am getting "the server responded with a status of 405 (Method Not Allowed)" issue while calling the web API service post method from Angular 4. CORS is handled in the code but it is giving the cross-origin error.
bellow is detail.
Web API Service method
[HttpPost]
public PostCodeListViewModel PostCodeSearch([FromBody]ArrayList motorPostCodesCAT)
{
var result = new PostCodeListViewModel();
.......
return result;
}
Response header in Global.asax
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Origin", "*");
if (HttpContext.Current.Request.HttpMethod == "OPTIONS")
{
HttpContext.Current.Response.AddHeader("Cache-Control", "no-cache");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Methods", "GET, POST");
HttpContext.Current.Response.AddHeader("Access-Control-Allow-Headers", "Content-Type, Accept, tkn,authorization");
HttpContext.Current.Response.AddHeader("Access-Control-Max-Age", "1728000");
HttpContext.Current.Response.End();
}
Angular service call
this.http.post(this.HostUrl + this.api_ReferralPostCodeDisableEnableURL, JSON.stringify(postcodeEmbargo), this.getStandardRequestOptions()).map((res) => { return res.json(); });
Angular request header
protected getStandardRequestOptions(contentType: string = null, existingOptions?: RequestOptions): RequestOptions {
if (!contentType) {
contentType = 'application/json';
}
let options = this.setAppendRequestHeader(existingOptions, 'Accept', contentType);
options = this.setAppendRequestHeader(options, 'Content-Type', contentType);
options = this.setAppendRequestHeader(options, 'Authorization', `Bearer ${this.authenticationToken}`);
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Origin', '*');
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Headers', 'accept, authorization, Content-Type');
options = this.setAppendRequestHeader(options, 'Access-Control-Allow-Methods', 'GET, POST, OPTIONS, PUT, PATCH, DELETE');
return options;
}
error getting on browser console
Image for Error on browser console
What I understand is that browser is making OPTIONS preflight request for CORS check but we have handled this in golobla.asax and earlier it was working perfectly fine the problem started when I have Added Angular Google Map(AGM) into the code.
Any Help would be appreciated.
Thanks in advance.
angular cors asp.net-web-api2 angular-google-maps http-status-code-405
angular cors asp.net-web-api2 angular-google-maps http-status-code-405
edited Nov 19 at 7:51
Priyanshi Srivastava
1209
1209
asked Nov 19 at 6:23
Ravindra Pandey
32
32
add a comment |
add a comment |
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
active
oldest
votes
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53369314%2fgetting-the-server-responded-with-a-status-of-405-method-not-allowed-issue-w%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown