2017-01-08 7 views
0

ruby​​ Net :: HTTP.getを使用してウェブサイトhttp://www.shopyourway.comをhttpで取得しようとしましたが、コード512でエラーが発生しました。 url "https://www.shopyourway.com"のためにsslで取得してください。ちょうどsslのないURLへのリダイレクトに続いています。"www.shopyourway.com"をhttpにしようとすると失敗する

コードは以下の通りです:

uri = URI('https ://www.shopyourway.com') #space between https and : does not exist 
body = Net::HTTP.get(uri) 

私はブラウザを使用してURLを閲覧することができます。しかし、なぜ私はそのURLのhttpを取得できないのですか?

ありがとう

+0

ユーザーエージェントを設定してみてください。 – JLB

+0

私はそれを試しても、どちらも動作しません。 –

+0

次を試してください:http://stackoverflow.com/questions/7210232/ruby-nethttp-following-301-redirects – JLB

答えて

0

最終的にこれを動作させるには、カップルヘッダーをGetリクエストに追加する必要があります。

uri = URI('http://www.shopyourway.com/today') 
    req = Net::HTTP::Get.new(uri) 
    req['Upgrade-Insecure-Requests'] = '1' 
    req['Connection'] = 'keep-alive' 
    req['User-Agent'] = 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36' 
関連する問題