Пример #1
0
/**
 * Test Http functions.
 */
function test_functions()
{
    http_cache_last_modified();
    http_chunked_decode();
    http_deflate();
    http_inflate();
    http_build_cookie();
    http_date();
    http_get_request_body_stream();
    http_get_request_body();
    http_get_request_headers();
    http_match_etag();
    http_match_modified();
    http_match_request_header();
    http_support();
    http_negotiate_charset();
    http_negotiate_content_type();
    http_negotiate_language();
    ob_deflatehandler();
    ob_etaghandler();
    ob_inflatehandler();
    http_parse_cookie();
    http_parse_headers();
    http_parse_message();
    http_parse_params();
    http_persistent_handles_clean();
    http_persistent_handles_count();
    http_persistent_handles_ident();
    http_get();
    http_head();
    http_post_data();
    http_post_fields();
    http_put_data();
    http_put_file();
    http_put_stream();
    http_request_body_encode();
    http_request_method_exists();
    http_request_method_name();
    http_request_method_register();
    http_request_method_unregister();
    http_request();
    http_redirect();
    http_send_content_disposition();
    http_send_content_type();
    http_send_data();
    http_send_file();
    http_send_last_modified();
    http_send_status();
    http_send_stream();
    http_throttle();
    http_build_str();
    http_build_url();
}
Пример #2
0
function _zp_curl_retrieve_data($url, $data = null)
{
    _zetaprints_debug();
    $options = array(CURLOPT_URL => $url, CURLOPT_HEADER => true, CURLOPT_CRLF => true, CURLOPT_RETURNTRANSFER => true, CURLOPT_HTTPHEADER => array('Expect:'));
    if ($data && is_array($data)) {
        $options[CURLOPT_POSTFIELDS] = function_exists('http_request_body_encode') ? http_request_body_encode($data, null) : _zp_http_request_body_encode($data);
    }
    _zetaprints_debug(compact('options'));
    $curl = curl_init();
    if (!curl_setopt_array($curl, $options)) {
        _zetaprints_debug('Can\'t set options for curl');
        return _zetaprints_error('Can\'t set options for curl');
    }
    $output = curl_exec($curl);
    $info = curl_getinfo($curl);
    $error = curl_error($curl);
    curl_close($curl);
    if ($output === false) {
        _zetaprints_debug(compact('error', 'info'));
        return _zetaprints_error($error);
    }
    list($headers, $body) = explode("\r\n\r\n", $output, 2);
    return _zetaprints_ok(compact('info', 'headers', 'body'));
}
Пример #3
0
    public function submit_item_request($name, $code, $ref, $post_params) {
        $login_resp = $this->login($name, $code);

        # We want to both submit to and use this URL as the referrer
        $url = $this->catalog_url . $ref;

        $body = http_request_body_encode($post_params, array());

        $resp = http_parse_message(http_post_data(
            $url, $body, array(
                "cookies"    => $login_resp['cookies'],
                "referer"    => $url,
            )
        ));

        if (preg_match('/Your request for.*was successful/i', $resp->body)) {
            return true;
        } else {
            throw new Exception("Unable to request item");
        }
    }