0

このプロジェクトで使用する宝石https://github.com/toptal/disqus_apiを試していますが、認証の詳細を受け入れるのに苦労しています。それは別の質問になるかもしれませんが、今のところ、ソース コードを調査し、手動でデバッグしたいと考えていました。

問題は、私がbundle open disqus_api. ファイルを見つけているように見えますが、ファイルに変更を加えると (デバッガーで中断するなど)、それが検出されません (また、エラーが発生し、結果として行を下にシフトする必要がある場合、行番号は変更されません)。 .

そうは言っても、私が完全に間違った場所にいるわけではないことを示す 1 つの兆候は、gem の lib ディレクトリ全体を一時的に削除すると、コアの DisqusApi クラスがまだロードされている間に、クラスの pry の「show-source」メソッドが出力することError: Couldn't locate a definition for DisqusApi!です。

(追加して編集):

具体的には、このファイルの70行目です

編集した後は、次のようになります。

def perform_request #line 68
  require 'byebug' #69
  byebug #70
  yield.tap do |response| #71
    raise InvalidApiRequestError.new(response) if response['code'] != 0 #72
  end
end

しかし、それは次のように誤ります: DisqusApi::InvalidApiRequestError: {"code"=>5, "response"=>"Invalid API key"} from /Users/sashacooper/.rvm/gems/ruby-2.3.1/gems/disqus_api-0.0.5/lib/disqus_api/api.rb:70:inperform_request のブロック'`

どうしたの?

4

1 に答える 1

1

byebug gemを使用する

  1. プロジェクトのGemfile.rb で

    group :development do
      gem 'byebug'
    end
    
  2. ターミナルで disqus_api gemを開きます

    bundle open disqus_api
    
  3. gem のlib/disqus_api.rbでは byebug gem が必要です。

    require 'byebug'
    
  4. debuggerデバッグしたい回線に電話をかけます

于 2016-11-09T20:45:08.820 に答える