SoftLayer API возвращает текст вместо json?

Я использую API с curl следующим образом: curl -X GET -g -u $SL_USER:$SL_APIKEY "https://api.softlayer.com/rest/v3.1/SoftLayer_Account/getHardware и я получал ответ json:

{"accountId":1414807,"bareMetalInstanceFlag":0,"domain":"regtech.cloud.com","fullyQualifiedDomainName":"dal1302vsrx001.regtech.cloud.com","hardwareStatusId":5,"hostname":"dal1302vsrx001","id":1579801,"manufacturerSerialNumber":"C819UAH12CC0374","notes":"","provisionDate":"2020-02-19T17:16:02-06:00","serialNumber":"SL01HOPT","serviceProviderId":1,"serviceProviderResourceId":null,"globalIdentifier":"957011c1-126f-4cc9-9c95-b7470f05d238","hardwareFunction":{"code":"WEBSVR","description":"Web Server","id":3},"hardwareStatus":{"id":5,"status":"ACTIVE"},"networkManagementIpAddress":"10.220.221.231","primaryBackendIpAddress":"10.220.221.222","primaryIpAddress":"55.517.245.230","privateIpAddress":"10.220.221.222"}

Теперь я пытаюсь переопределить это в axios js и по умолчанию получаю текст. Я пытался явно установить тип ответа на json, но не работал! Пожалуйста, помогите, если вы видите что-то неправильное, что я сделал в коде ниже:

api_endpoint = "https://api.softlayer.com/rest/v3.1/SoftLayer_Account/getHardware"
axios.get(api_endpoint, {
    params:{
        resultLimit: 1
    },
    auth: {
        username: SL_USER,
        password: SL_APIKEY
    },
    responseType: 'application/json',
    timeout: 20000
})
.then((response) => {
    console.info(response.data)
})
.catch(function (ex) {
    console.info("There was an error obtaining the product id")
    console.info(ex)
})

Вот формат, который я получаю из кода axios:

META_PROPERTIES='ACCOUNT_ID BARE_METAL_INSTANCE_FLAG DOMAIN FULLY_QUALIFIED_DOMAIN_NAME HARDWARE_STATUS_ID HOSTNAME ID MANUFACTURER_SERIAL_NUMBER NOTES PROVISION_DATE SERIAL_NUMBER SERVICE_PROVIDER_ID SERVICE_PROVIDER_RESOURCE_ID GLOBAL_IDENTIFIER HARDWARE_FUNCTION HARDWARE_STATUS NETWORK_MANAGEMENT_IP_ADDRESS PRIMARY_BACKEND_IP_ADDRESS PRIMARY_IP_ADDRESS PRIVATE_IP_ADDRESS'
META_PROPERTY_TYPES='SCALAR SCALAR SCALAR SCALAR SCALAR SCALAR SCALAR SCALAR SCALAR SCALAR SCALAR SCALAR SCALAR SCALAR OBJECT OBJECT SCALAR SCALAR SCALAR SCALAR'

ACCOUNT_ID='1414807'
BARE_METAL_INSTANCE_FLAG='0'
DOMAIN='regtech.cloud.com'
FULLY_QUALIFIED_DOMAIN_NAME='dal1302vsrx001.regtech.cloud.com'
.
.
.

Согласно документу axios, измените на responseType: 'json'.

jfriend00 12.12.2020 00:35

Сначала пробовал, но безуспешно -_-. спасибо

Omar Odaini 12.12.2020 07:13

Вам нужно перейти к документу для сайта и посмотреть, что именно вам нужно передать, чтобы он отправил вам обратно JSON. И вы также можете сравнить ТОЧНЫЕ запросы, отправленные как из вашего завитка, так и из вашего Javascript, и посмотреть, чем отличаются эти два запроса.

jfriend00 12.12.2020 07:24

Спасибо, вернулся, посмотрел и оказывается, требует указать тип в URL. еще раз спасибо!!

Omar Odaini 12.12.2020 07:42
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
4
556
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я добавил .json в конец моего URL-адреса.

Другие вопросы по теме