Перевод вызова API остальных из углового в jQuery

0

Извиняюсь, если это сформулировано неловко, но я должен сделать вызов API с помощью jQuery. Я уже звонил с использованием angularJS раньше, но для этого случая я не могу использовать это. Я попытался перевести его в jQuery, но я не получаю одинаковых результатов. Есть ли что-то, что я делаю неправильно, или мне не хватает информации? Я новичок в jQuery, поэтому чувствую, что мне не хватает чего-то важного или чего-то не понятого.

Рабочий код с угловымJS:

var req = {
        method: 'POST',
        url: 'https://fakeurl.com/rest/v1/portal/user/' + $scope.email.value,
        headers:{
            'Content-Type': 'application/json',
            'Header_1': 'Yes',
            'x-access-token': 'glsFromWebsite' //$scope.authInfo.token
        }
    };

    restCall($http, req).then(function (res) {

        // check for error even though 200 response
        if (res.error) {
            console.error("Error reported...");    
        } else {
'         //enter success code here
        }
    });

var restCall = function(http, req) {
  var _url = getBaseUrl() + req.url;
  req.url = _url;

  return new Promise(function(fulfill, reject) {
    try {

      http(req).then(function (res) {

        // check for error even though 200 response
        if (res.data.error) {
          if (res.data.error === '601') {
            console.error('Token is invalid or has expired');
          } else {
            console.error("Error from end point: " + res.data.error);
          }
        } 
        fulfill(res.data);

      }, function(err) {
        console.error('Error calling rest endpoint',err);
        reject();
      });  

    } catch (ex) {
      console.error('Exception calling rest endpoint',ex);
      reject(ex);
    }
  }); 
};

Мой неудачный код jQuery:

var processCreate = function (email) {

    $.ajax({
        url: 'https://fakeurl.com/rest/v1/portal/user/' + email.value,
        type: 'POST',
        headers: {
            'Content-Type': 'application/json',
            'Header_1': 'Yes',
            'x-access-token': 'glsFromWebsite' //$scope.authInfo.token
        },
        success: function (res, a, b) {
            if (res === 'NOT FOUND') {
                //code that runs when this case is true
            } else {
                //code that runs when this case is false
            }
        },
        error: function () {
            console.error("Error...");
        }
    });
}
  • 0
    Вы получаете сообщение об ошибке при попытке использовать jquery? Как 404 или 500?
  • 0
    "Сбой", как выглядит ошибка журнала консоли, вот где начинается отладка
Показать ещё 6 комментариев
Теги:
rest

1 ответ

1
Лучший ответ

Попробуйте сделать так называемый ajax-вызов

var processCreate = function (email) {           
                var authHeaders = {};
                authHeaders.Authorization = 'Bearer ' + 'glsFromWebsite';

               $.ajax({
                    url: 'https://fakeurl.com/rest/v1/portal/user/' + email.value,
                    type: "POST",
                    cache: false,
                    dataType : "json",
                    contentType: "application/json; charset=utf-8",
                    headers: authHeaders,
                    success: function (data) {

                        //console.log(data);
                        if (data === 'NOT FOUND') {
                          //code that runs when this case is true
                        } else {
                          //code that runs when this case is false
                        }
                    },
                    error: function (xhr) {
                        console.log(xhr);
                    }
                });
}
  • 0
    Спасибо, но это все еще не работает. Я пытаюсь отлаживать в Chrome, но он не запускает ни функции успеха, ни ошибки. Я помещаю точки останова в Ajax, но он пропускает их.
  • 1
    URL сделан после того, как это правильно? Я думаю, что они могут быть некоторые проблемы с URL. Есть ли в нем значение email.value?
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню