欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP to Ruby Code

程序员文章站 2024-02-14 11:17:22
...
和下面这段代码相同的ruby 怎么写呢?
public function makeRequest($url, $method, $postfields = NULL) {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
        if ('POST' === $method) {
            curl_setopt($ch, CURLOPT_POST, 1);
            if (!empty($postfields)) {
                curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
            }
        }
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $this->_connectTimeOut);
        curl_setopt($ch, CURLOPT_TIMEOUT, $this->_timeOut);
        curl_setopt($ch, CURLOPT_USERAGENT, $this->_userAgent);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        $output = curl_exec($ch);
        curl_close($ch);
        return $output;
    }

THK

回复内容:

和下面这段代码相同的ruby 怎么写呢?

public function makeRequest($url, $method, $postfields = NULL) {
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
        if ('POST' === $method) {
            curl_setopt($ch, CURLOPT_POST, 1);
            if (!empty($postfields)) {
                curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields);
            }
        }
        curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $this->_connectTimeOut);
        curl_setopt($ch, CURLOPT_TIMEOUT, $this->_timeOut);
        curl_setopt($ch, CURLOPT_USERAGENT, $this->_userAgent);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        $output = curl_exec($ch);
        curl_close($ch);
        return $output;
    }

THK

  require 'uri'
  require 'net/http'
  require 'openssl'
  def makeRequest(url, method, postfields="", isHttps=false)
    httpHeader = {
	"Expect:"=>""
    }

    uri = URI(url)
    response = nil
    http = Net::HTTP.new(uri.host, uri.port)
    if isHttps
	http.use_ssl = true
	http.verify_mode = OpenSSL::SSL::VERIFY_NONE
    end
    http.start()    
    response = http.send_request(method, uri.path, postfields, httpHeader) 

    ret_code = response.code;
    ret_str = response.body;
    return ret_str;
  end

推荐一个不同编程语言之间转换的项目矩阵,楼主可以看看

http://langlangmatrix.com/

相关标签: php ruby