как получить конкретное значение ключа из всех объектов в вызове AJAX - PullRequest
1 голос
/ 08 марта 2020

вот код, я просто хочу получить ключ «url» и его значение и сохранить его в переменной. Я пробовал несколько способов отделить ключ с именем url, что вы можете видеть в моем закомментированном коде

$.ajax({
  type: 'GET',
  url: "url",
  // data: data,
  // async: false,
  beforeSend: function(xhr) {
    if (xhr && xhr.overrideMimeType) {
      xhr.overrideMimeType('application/json;charset=utf-8');
    }
  },
  dataType: 'json',
  success: function(res) {
    // console.log(res);
    // re=JSON.stringify(res);
    re = $.parseJSON(res)
    console.log(re['url'])
    // console.log(re)
    // console.log(re["url"])
    // for(var url in re) {
    //   var value = objects[key];
    // }
    // console.log(Object.values('url'));
    // ok=Object.keys(re).map(key => re[url])
    // console.log(ok)
    // console.log(re)
    // $.each(re, function(key, value){
    //    console.log(key + value);
    // });
    // console.log(re[url])

    // const seg = re.find(item => item.key === "url");
    // const result=seg
    // console.log(result)
    // alert(res);
  }

});

1 Ответ

0 голосов
/ 08 марта 2020

Вам необходимо решить проблемы с CORS с помощью Django бэкэнда, чтобы получить правильный ответ. Я вижу, что ответ имеет следующую структуру:

{
    "count": 51,
    "next": "http://scrapsh.herokuapp.com/api/post/?page=2",
    "previous": null,
    "results": [
        {
            "id": 1,
            "title": "asdas",
            "rate": 1,
            "author": "madhumani",
            "content": "asdad",
            "review": null,
            "url": null
        },
        {
            "id": 2,
            "title": "okau",
            "rate": 1,
            "author": "madhumani",
            "content": "asdasd",
            "review": null,
            "url": null
        },
        {
            "id": 3,
            "title": "DASS",
            "rate": 1,
            "author": "madhumani",
            "content": "sdfsdfs",
            "review": null,
            "url": null
        },
        ...
   ]
}

Чтобы получить URL, вы можете просто использовать .map в массиве results:

let response = {
  "count": 51,
  "next": "http://scrapsh.herokuapp.com/api/post/?page=2",
  "previous": null,
  "results": [{
      "id": 1,
      "title": "asdas",
      "rate": 1,
      "author": "madhumani",
      "content": "asdad",
      "review": null,
      "url": "www.a.com"
    },
    {
      "id": 2,
      "title": "okau",
      "rate": 1,
      "author": "madhumani",
      "content": "asdasd",
      "review": null,
      "url": "www.b.com"
    },
    {
      "id": 3,
      "title": "DASS",
      "rate": 1,
      "author": "madhumani",
      "content": "sdfsdfs",
      "review": null,
      "url": "www.c.com"
    }
  ]
}

console.log(response.results.map(item => {
  return {
    "url": item.url
  }
}))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...