连接重置连接 - 使用Bitly

时间:2016-11-22 12:01:02

标签: jquery ruby-on-rails bit.ly

我在我的申请中使用了2个案例。在一个案例中,我通过jQuery使用它:

  function get_short_url(long_url, login, api_key, func)
{
    $.getJSON(
        "http://api.bitly.com/v3/shorten?callback=?", 
        { 
            "format": "json",
            "apiKey": api_key,
            "login": login,
            "longUrl": long_url
        },
        function(response)
        {
            func(response.data.url);
        }
    );
}

在其他情况下我使用版本1.0.2的bitly gem。为此我要添加

视图:

<%= f.input :link_placeholder, :as => :text, :label => false, :input_html => { :id => 'copy_link', :class => '', :value => "#{get_bitly_url(user_report_url(@user, @report))}", :rows => 2, :cols => 30, :maxlength => 490} %>

控制器:

  def show
    @report = Report.find(params[:id])
    @bitly_url = get_bitly_url("#{user_reports_url}/#{@report.id}")    
    respond_to do |format|
      format.html # show.html.erb
      format.xml  { render :xml => @report }
    end
  end
  def get_bitly_url(url)
    if Rails.env.development?
      return url
    else
      bitly = Bitly.new('myapp', 'R_e2pd1dca0442a20a2qwqw59156e3260d')
      bitly.shorten(url).short_url
    end
  end

以上2在开发模式和rails生产模式下工作正常,我也尝试在AWS EC2实例中使用Apache和Phusion,它工作得很好   但它不在主生产服务器中工作,其中域名在网址中以“https”提及。

这些是我得到的错误:

  

Errno :: ECONNRESET(通过对等方重置连接 - SSL_connect):
  app / controllers / reports_controller.rb:342:在get_bitly_url'
app/controllers/reports_controller.rb:35:in
show'

show中提到的url来自上面提到的js文件。

请帮我摆脱这个错误。

2 个答案:

答案 0 :(得分:1)

错误显示 peer - SSL_connect ,这可能是网络问题。因此,请检查网络中的bitly端口是否已打开。

答案 1 :(得分:0)

通常在服务器损坏时发生。你有没有检查主服务器上的网址是否正确?如果它适用于开发,也应该在生产上工作。祝你好运!