1

Facebook Graphを使用してRest Clientを使用してオブジェクトを削除しようとすることができます。

def delete_object
    temp = url_escape('https://graph.facebook.com/'+request_id+'?access_token='+token)
    p "temp is"
    p temp
    delete_attempt = RestClient.delete temp
end

private

def url_escape(string)
    string.gsub(/([^ a-zA-Z0-9_.-]+)/n) do
        '%' + $1.unpack('H2' * $1.size).join('%').upcase
    end.tr(' ', '+')
end

コンソール出力:

temp is
"https%3A%2F%2Fgraph.facebook.com%2Fobject_id_here%3Faccess_token%3Daccess_token_here"

object_id_here&access_token_hereここではプレースホルダーとして使用されていますが、値は正しいです。

次のエラーが表示されます。

undefined method `request_uri' for #<URI::Generic:0x00000104385a40>
/Users/ben/.rvm/gems/ruby-1.9.2-p0/gems/rest-client-1.6.1/lib/restclient/request.rb:60:in `execute'\n/
Users/ben/.rvm/gems/ruby-1.9.2-p0/gems/rest-client-1.6.1/lib/restclient/request.rb:31:in `execute'\n/
Users/ben/.rvm/gems/ruby-1.9.2-p0/gems/rest-client-1.6.1/lib/restclient.rb:80

request.rbの60行目はtransmit uri...、Rest Client のこのメソッドの行です。

def execute & block
    uri = parse_url_with_auth(url)
    transmit uri, net_http_request_class(method).new(uri.request_uri, processed_headers), payload, & block
end

このエラーの原因は何ですか?

4

0 に答える 0