Я пытаюсь использовать telnet для доступа к http://stream.twitter.com/1/statuses/sample.json, но при подключении к нему я получаю 401 несанкционированную ошибку. Возможность указать имя пользователя и пароль позволит мне войти. Делая это в браузере, я получаю всплывающее окно с просьбой, есть ли способ сделать то же самое через telnet?
2 ответа
Если вы хотите использовать Telnet в качестве HTTP-клиента, вы должны свободно говорить по HTTP. В частности, если веб-сайт требует базовой аутентификации, вам нужно будет отправить учетные данные аутентификации в заголовке вместе с вашим запросом.
Вероятно, лучше всего подготовить все строки заголовка в отдельном файле (например, в блокноте), а затем быстро скопировать / вставить их в сеанс Telnet.
В качестве альтернативы, просто используйте готовый HTTP-клиент, такой как wget или curl!
Вы можете выполнить обычную аутентификацию только с помощью программы кодирования Base64. (Конечно, curl -u foo:bar http://stream.twitter.com/1/statuses/sample.json
будет гораздо проще, но ваш выбор.)
Тем не менее, Twitter больше не поддерживает Basic. Единственный доступный метод - OAuth, который слишком сложен, чтобы использовать его вручную. Есть инструменты, такие как Twurl для доступа к API Twitter.