400 плохих запросов в http запросах, но отлично работают в почтальоне в ионном - PullRequest
0 голосов
/ 23 июня 2019

когда я запускаю http.post (), он отвечает '400 (Bad Request)', но тот же код работает в другом проекте, в котором данные отправляются с данными формы, но в этом случае я отправляю данные с помощью application / json в формате строки.

API отлично работает с почтальоном и генерирует токен

это мой код почтальона, который отлично работает

    var http = require("https");

      var options = {
         "method": "POST",
         "hostname": "dhc-app-api.azurewebsites.net",
         "port": null,
         "path": "/v2/auth/signIn",
         "headers": {
         "content-type": "application/json",
        "cache-control": "no-cache",
       "postman-token": "e9ba66bd-e56b-e526-e6c0-d1b3449760f2"
         }
        };

        var req = http.request(options, function (res) {
         var chunks = [];

        res.on("data", function (chunk) {
        chunks.push(chunk);
      });

      res.on("end", function () {
      var body = Buffer.concat(chunks);
      console.log(body.toString());
       });
       });

      req.write(JSON.stringify({ email: 'manojmht45@gmail.com', 
       password: '********' }));
      req.end();

это мой код в ионном

         postData(){
              return new Promise((resolve, reject) =>{
            let headers = new Headers(
                {
                    'Content-Type' : 'application/json'
                });
            let options = new RequestOptions({ headers: headers });

            let data = JSON.stringify({
                "email":"manojmht45@gmail.com",
                "password":"********"
            });

            return new Promise((resolve, reject) => {
                this.http.post('https://dhc-app-api.azurewebsites.net/v2/auth/signIn', data, options)
                    .toPromise()
                    .then((response) =>
                    {
                        console.log('API Response : ', response.json());
                        resolve(response.json());
                    })
                    .catch((error) =>
                    {
                        console.error('API Error : ', error.status);
                        console.error('API Error : ', JSON.stringify(error));
                        reject(error.json());
                    });
            });
        });

почтальон результат

        {
"token": "eyJhbGciOiJIUzI1NiICI6IkpXVCJ9.eyJlbWFpbCI6ImN1aV9ib21iMDIwNEBvdXRsb29rLmNvbSIsImFjY291bnRJZCI6ImxYRVhPMFZqXNlcklkIjoiNXJ5NzNaeUQiLCJyb2xlIjoidXNlciIsImFjY2Vzc09wZXJhdGlvbiI6IltPcGVyYXRpb25dLltSZWdpb25dLltBbGxdIiwiZGVmYXVsdE9wZXJhdGlvbiI6IltPcGVyYXRpb25dLltSZWdpb25dLltBbGxdxpZW50IjoiRGVtbyIsIm5hbWUiOiJEYXZpZCBCdWNjaSIsIm1hZ2ljTGluayI6ZmFsc2UsImlhdCI6MTU2MTI3MTUwMywiZXhwIjoxNTYxMjczOTAzfQ.71asfbf2Nop-QeqVbi2YswnnkY-5qHrhTRjSUZlFKI"
      }

результат мой ионный код

    polyfills.js:3 OPTIONS https://dhc-app-api.azurewebsites.net/v2/auth/signIn 400 (Bad Request)



     (index):1 Access to XMLHttpRequest at 'https://dhc-app-api.azurewebsites.net/v2/auth/signIn' from origin 'http://localhost:8100' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource.
     auth-service.ts:47 API Error :  0

    auth-service.ts:48 API Error :  {"_body":{"isTrusted":true},"status":0,"ok":false,"statusText":"","headers":{},"type":3,"url":null}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...