Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Ruby Twitter gem:Twitter\u client.update上nil:NilClass的未定义方法'each\u byte'_Ruby On Rails_Ruby_Twitter_Ruby On Rails 5 - Fatal编程技术网

Ruby on rails Ruby Twitter gem:Twitter\u client.update上nil:NilClass的未定义方法'each\u byte'

Ruby on rails Ruby Twitter gem:Twitter\u client.update上nil:NilClass的未定义方法'each\u byte',ruby-on-rails,ruby,twitter,ruby-on-rails-5,Ruby On Rails,Ruby,Twitter,Ruby On Rails 5,我对宝石有严重的问题。它在rails控制台中工作得非常好,但在lib/It中不是 nil:NilClass的未定义方法'each_byte' 连续 完整跟踪: | 2019-07-23T16:53:21.793Z 64165 TID-oxprcg2np WARN: NoMethodError: undefined method `each_byte' for nil:NilClass | 2019-07-23T16:53:21.793Z 64165 TID-oxprcg2np WARN: /U

我对宝石有严重的问题。它在rails控制台中工作得非常好,但在lib/It中不是

nil:NilClass的未定义方法'each_byte' 连续

完整跟踪:

| 2019-07-23T16:53:21.793Z 64165 TID-oxprcg2np WARN: NoMethodError: undefined method `each_byte' for nil:NilClass
 | 2019-07-23T16:53:21.793Z 64165 TID-oxprcg2np WARN: /Users/DekaKisaLove/.rvm/rubies/ruby-2.6.1/lib/ruby/2.6.0/uri/rfc2396_parser.rb:308:in `block in escape'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/activesupport-5.2.3/lib/active_support/core_ext/string/output_safety.rb:230:in `gsub'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/activesupport-5.2.3/lib/active_support/core_ext/string/output_safety.rb:230:in `gsub'
 | /Users/DekaKisaLove/.rvm/rubies/ruby-2.6.1/lib/ruby/2.6.0/uri/rfc2396_parser.rb:305:in `escape'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:32:in `escape'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:114:in `block (2 levels) in normalized_params'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:114:in `collect'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:114:in `block in normalized_params'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:114:in `collect'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:114:in `normalized_params'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:110:in `signature_base'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:101:in `hmac_sha1_signature'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:97:in `signature'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:77:in `signed_attributes'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:83:in `normalized_attributes'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/simple_oauth-0.3.1/lib/simple_oauth/header.rb:65:in `to_s'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/headers.rb:39:in `auth_header'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/headers.rb:30:in `request_headers'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/rest/request.rb:62:in `set_multipart_options!'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/rest/request.rb:28:in `initialize'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/rest/utils.rb:50:in `new'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/rest/utils.rb:50:in `perform_request'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/rest/utils.rb:72:in `perform_request_with_object'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/rest/utils.rb:64:in `perform_post_with_object'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/rest/tweets.rb:155:in `update!'
 | /Users/DekaKisaLove/.rvm/gems/ruby-2.6.1@closedwon/gems/twitter-6.2.0/lib/twitter/rest/tweets.rb:126:in `update'
rfc2396_解析器。rb:308

  def escape(str, unsafe = @regexp[:UNSAFE])
  unless unsafe.kind_of?(Regexp)
    # perhaps unsafe is String object
    unsafe = Regexp.new("[#{Regexp.quote(unsafe)}]", false)
  end
  str.gsub(unsafe) do
    us = $&
    tmp = ''
    us.each_byte do |uc|
      tmp << sprintf('%%%02X', uc)
    end
    tmp
  end.force_encoding(Encoding::US_ASCII)
end

非常抱歉,问题出在tweet_文本中-它不能有特殊符号。我希望有一天这能帮助别人。。。我花了4个小时。

这里没有对每个_字节的引用,所以您可能需要进一步挖掘。@tadman这是日志中每个_字节的唯一引用=cmd+f,只出现在错误消息中。它在第308行的rfc2396_parser.rb文件中。@tadman补充了这个问题
  def escape(str, unsafe = @regexp[:UNSAFE])
  unless unsafe.kind_of?(Regexp)
    # perhaps unsafe is String object
    unsafe = Regexp.new("[#{Regexp.quote(unsafe)}]", false)
  end
  str.gsub(unsafe) do
    us = $&
    tmp = ''
    us.each_byte do |uc|
      tmp << sprintf('%%%02X', uc)
    end
    tmp
  end.force_encoding(Encoding::US_ASCII)
end