Конвертировать Node.js HTTP-запрос в Python - PullRequest
0 голосов
/ 29 июня 2018

У меня есть этот небольшой кусок кода в node.js, который делает запрос API, и мне нужно преобразовать его в python request.get () ....

import got from 'got'
got.get(`https://example.com/api`, {
      json: true,
      query: {
        4,
        data: `12345`
      },
})

Итак, мой код на Python начинался бы так:

import requests

requests.get('https://example.com/api')

Но как мне добавить параметры

      json: true,
      query: {
        4,
        data: `12345`
      },

в запросе Python?

1 Ответ

0 голосов
/ 29 июня 2018

Я бы настоятельно рекомендовал просматривать доступные документы при попытке решить подобные проблемы. В общем, вы получите ответ намного быстрее и узнаете намного больше - я связал документы в этом ответе, чтобы их было проще исследовать. для будущего использования. Я никогда не использовал библиотеку nodejs got, но просмотрел документы, чтобы определить, что означает каждый из параметров, на странице npm есть хорошая документация для этого :

  • json - Устанавливает заголовок типа контента на «application / json», устанавливает Примите заголовок к «application / json» и автоматически запустите JSON.parse (ответ). Я не в курсе вашего знакомства с http Заголовки, но больше информации можно посмотреть на MDN и список заголовков можно найти в статье в Википедии для заголовка поля .
  • query - Устанавливает строку запроса для запроса. Я предполагаю, что вы знакомы с этим, но больше информации может быть проверил википедию для строки запроса .

Итак, из вышесказанного выглядит, что вы пытаетесь отправить следующий запрос на сервер:

Я бы порекомендовал прочитать руководство пользователя библиотеки по python , чтобы лучше понять, как использовать библиотеку.

Для настройки пользовательских заголовков можно использовать необязательный параметр headers .

Для строки запроса необязательный параметр params допускает это . Единственная проблема с params - это отсутствие поддержки бесценного ключа (в вашем примере - 4), чтобы обойти эту кодировку, строка запроса в URL может быть лучшим подходом, пока библиотека запросов не поддержит эту функцию. Не уверен, когда будет доступна поддержка, но я обнаружил закрытую проблему на GitHub , в которой упоминалась потенциальная поддержка в более поздней версии.

...