2

Hi and merry christmas to you all.

I am working with a Phonegap AngularJS App. I am trying to make an http Post but I it returns an 404 error. I tried the POST using jquery 1.10.2 and it works. I have been days in this and it is the last part to finish coding the app.

I have tried different versions of the request with no success.

Here is the code

$scope.sendMail = function (user){ 
    console.log('sendmaul');


$http.post('https://cloud/email.aspx',
   {
        user: user.email,
        pass: user.password,
        to:user.recipient,
        subject:'Test',
        message:'My Message'
    }
    )
.success(function (data, status, headers, config){
        console.log('success');

})
.error(function (data,status,headers,config){
        console.log(data + status + config);
    });
}

I have read in many places that I need to add on a angular.module the following code as .config

$httpProvider.defaults.useXDomain = true;
delete $httpProvider.defaults.headers.common['X-Requested-With'];

I added that code on controller.js but I don't see difference on behavior in my app. I also have many http.get() request that work really well.

--EDIT--

https://cloud.email.aspx is not a real site.

5
  • 1
    Have you looked @ network traces / debuggers to see what the differences in your request is with jquery and angular? Have you tried curl? Commented Dec 23, 2013 at 21:10
  • I am testing inside my app because when testing locally I get No 'Access-Control-Allow-Origin' so it is very difficult to check anything else. This is my first app so I don't know how to implement curl with angular. If I remove POST method I get a 405. thanks for the response. Commented Dec 23, 2013 at 21:43
  • It seems a CORS problem. Commented Dec 23, 2013 at 22:24
  • I solved my CORS problem and I get a 200 status but it seems that DATA does not arrive. Again, jquery 1.10.2 works like a charm Commented Dec 30, 2013 at 13:14
  • Ha ha, did sendmaul make anyone else smile? Commented Jul 29, 2016 at 16:43

1 Answer 1

8

Solved my problem.

After adding CORS and some Origins Exceptions on server side. I tried my code and got Success and 200 status response but the web service did nothing. After reading this other stackoverflow post I found out that Angularjs post data different from jquery so a normal POST read on the web service would not work. That post have a link to this site which explain in more detail my issue and it has some code for to send data the same way jquery does.

I hope this help someone

Sign up to request clarification or add additional context in comments.

1 Comment

Dude, props to you! Fallowed the trail and got the damn explanation in the end. Thank you!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.