ruby 第三方模块unirest使用

寻技术 Ruby编程 2023年07月11日 86
  • Creating Requests

    require 'unirest'
    response = Unirest.post 'http://httpbin.org/post',
                            headers:{ Accept:'application/json' },
                            parameters:{ age: 23, foo:'bar' }
    
    puts response.code # Status code
    puts response.headers # Response headers
    puts response.body # Parsed body
    puts response.raw_body # Unparsed body

     

  • File Uploads

    require 'unirest'
    Unirest.timeout(30)
    response = Unirest.post 'http://httpbin.org/post',
                            headers:{ Accept:'application/json' },
                            parameters:{ age:23, file:File.new(__dir__+'/test.text', 'rb') }
    puts response.body

     

  • Custom Entity Body

    require 'unirest'
    response = Unirest.post 'http://httpbin.org/post',
                            headers:{ Accept:'application/json' },
                            parameters:{ age:'value', foo:'bar' }.to_json # Converting the Hash to a JSON string
    puts response.body

     

  • Basic Authentication

    require 'unirest'
    response = Unirest.get 'http://httpbin.org/get', auth:{user:'username', password:'password'}
    puts response.body

     

  • Unirest.get(url, headers: {}, parameters: nil, auth:nil, &callback)
    Unirest.post(url, headers: {}, parameters: nil, auth:nil, &callback)
    Unirest.delete(url, headers: {}, parameters: nil, auth:nil, &callback)
    Unirest.put(url, headers: {}, parameters: nil, auth:nil, &callback)
    Unirest.patch(url, headers: {}, parameters: nil, auth:nil, &callback)
    • url (String) - Endpoint, address, or uri to be acted upon and requested information from.
    • headers (Object) - Request Headers as associative array or object
    • parameters (Array | Object | String) - Request Body associative array or object
    • callback (Function) - Optional; Asychronous callback method to be invoked upon result.

  • Response

    • code - HTTP Response Status Code (Example 200)
    • headers - HTTP Response Headers
    • body - Parsed response body where applicable, for example JSON responses are parsed to Objects / Associative Arrays.
    • raw_body - Un-parsed response body

  • Advanced Configuration

    Timeout

    Unirest.timeout(5) # 5s timeout

    Default Request Headers

    Unirest.default_header('Header1','Value1')
    Unirest.default_header('Header2','Value2')
    Unirest.clear_default_headers()

    User-Agent

    Unirest.user_agent("custom_user_agent")

    参考:http://unirest.io/ruby.html

关闭

用微信“扫一扫”