• 人気のコメント(0)
  • 全てのコメント
perl48 perl48 誰かが公開したスクリプトがScript Kiddyに使い倒され、そのUAがRubyになってた。はてな側は自動検知でブラックリスト化したのでは、という夢想。

2018/03/05 リンク

Akkiesoft Akkiesoft REST APIドキュメントの注意事項に昔(たぶんこの記事が書かれる前)から「過剰な連続アクセス、 User-Agent を正しく指定しないアクセスなどは予告なしに制限をかける場合があります。」て書いてるのでこれな気が

2018/01/10 リンク

non_117 non_117 bot対策なんでしょうね

2016/09/28 リンク

W53SA W53SA 「はてなブックマークエントリー情報取得APIを使用する時は、Rubyから始まらないUser-Agentを指定してリクエストする必要がある」味わい深い

2016/09/27 リンク

tbpg tbpg "Rubyだけがブラックリスト"

2016/09/26 リンク

snowcrush snowcrush なんと・・・

2016/09/26 リンク

    関連記事

    はてなブックマークエントリー情報取得APIが503を返す / はてなはRubyが嫌い? -- ぺけみさお

    TL;DR はてなブックマークエントリー情報取得APIは、User-Agentが存在しないリクエストに対して503を返...

    ブックマークしたユーザー

    • nobodyplace2018/11/14 nobodyplace
    • perl482018/03/05 perl48
    • hiroomi2018/01/10 hiroomi
    • Akkiesoft2018/01/10 Akkiesoft
    • jigendaddy2017/01/21 jigendaddy
    • ottonove2016/12/02 ottonove
    • tweezerscanal2016/09/30 tweezerscanal
    • non_1172016/09/28 non_117
    • nonylene2016/09/27 nonylene
    • utgwkk2016/09/27 utgwkk
    • nna7742016/09/27 nna774
    • W53SA2016/09/27 W53SA
    • tyage2016/09/27 tyage
    • Pocket7878_dev2016/09/27 Pocket7878_dev
    • mieki2562016/09/27 mieki256
    • tbpg2016/09/26 tbpg
    • snowcrush2016/09/26 snowcrush
    • ltzz2016/09/25 ltzz
    すべてのユーザーの
    詳細を表示します

    いま人気の記事

    いま人気の記事 - テクノロジー

    新着記事 - テクノロジー

    同じサイトの新着

    • ValgrindのMassifを使用してプログラムのメモリ使用量をプロファイリングする -- ぺけみさお

      1 userswww.xmisao.com

      実行するとmassif.out.pidというファイルが出力される。 pidの部分にはプロセスIDが入る。 このファイルにプロファイリング結果が保存されているので、Valgrindのms_printというコマンドで内容を表示する。 ms_printの出力は膨大なので、実際にはlessなどのページャで読むと良い。 -------------------------------------------------------------------------------- Command: ruby load_documents.rb Massif arguments: (none) ms_print arguments: massif.out.8336 ----------------------------------------------------------------------
    • リバースプロキシ化したnginxでHostヘッダを素通しする設定 -- ぺけみさお

      1 userswww.xmisao.com

      nginxによるリバースプロキシでは、HTTPのHostヘッダがnginxにより書き換えられてバックエンドのサーバに伝わる。この挙動は、バックエンドでHostヘッダに基づいて処理をする場合(例えばCookieの付与)に、思わぬ落とし穴となることがある。 これを避けるために、バックエンドのサーバにも、nginxにアクセスされた時と同様のHostヘッダを付与してやりたくなる。nginxではproxy_ses_headerの設定を使えばこれを実現できる。 server { listen 80; server_name example.com; location / { proxy_pass http://127.0.0.1:8080; proxy_set_header Host $host; } } この設定のproxy_set_header Host $host;がHostヘッダをnginxで
    • Sinatraのエラーハンドラはdevelopment環境(デフォルト)では動作しない -- ぺけみさお

      1 userswww.xmisao.com

      Sinatraでは例外発生時にエラー画面を表示するためのエラーハンドラerrorが用意されている。これにより以下のようなエラーハンドリングが可能である。 error do # すべての例外を捕捉 end error MyException do # MyException例外を捕捉 end error 403 # ステータスコード403を捕捉 end ただし、注意点としてdevelopment環境(デフォルト)では、Sinatraのエラー画面が出てきてしまい、これらのエラーハンドラは動作しない。エラーハンドラを期待通り動作させるには、Sinatraの環境を設定してやる必要がある。環境を設定するには以下3つの方法がある。 環境変数RACK_ENV環境変数にproductionを設定してSinatraアプリケーションを起動することで環境を設定することができる。
    • Sequelでレコードがあれば更新なければ挿入するUPSERTを実装 -- ぺけみさお

      1 userswww.xmisao.com

      レコードがあれば更新を行い、なければ挿入を行いたい。 そのようなケースはデータベースを使っているとしばしば存在する。 このような処理はINSERTとUPDATEを合わせてUPSERTと呼ばれる。 DBMSの中には、UPSERTを1ステートメントで行える機能を持つものがある。 MySQLやSQLiteのREPLACE構文がそれである。 しかしREPLACE構文は標準化されていないので、DBMS依存のプログラムとなり使い勝手が悪い。 またSequelはREPLACE構文をサポートしていない。 本エントリではDBMSに依らずに使用できる擬似的なUPSERTをSequelのプログラムで実装する。 以下がプログラムで実装した擬似的なUPSERTの例だ。 Sequelで実行されるSQLはコメントで併記した。 require 'sequel' DB = Sequel.sqlite DB.create_t

    Behance

    1 users https://www.behance.net/

    pongay

    1 users http://www.koinup.com/