File: http_client_ext.xml

package info (click to toggle)
virtuoso-opensource 7.2.5.1%2Bdfsg1-0.3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 285,240 kB
  • sloc: ansic: 641,220; sql: 490,413; xml: 269,570; java: 83,893; javascript: 79,900; cpp: 36,927; sh: 31,653; cs: 25,702; php: 12,690; yacc: 10,227; lex: 7,601; makefile: 7,129; jsp: 4,523; awk: 1,697; perl: 1,013; ruby: 1,003; python: 326
file content (120 lines) | stat: -rw-r--r-- 5,794 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
 -
 -  This file is part of the OpenLink Software Virtuoso Open-Source (VOS)
 -  project.
 -
 -  Copyright (C) 1998-2018 OpenLink Software
 -
 -  This project is free software; you can redistribute it and/or modify it
 -  under the terms of the GNU General Public License as published by the
 -  Free Software Foundation; only version 2 of the License, dated June 1991.
 -
 -  This program is distributed in the hope that it will be useful, but
 -  WITHOUT ANY WARRANTY; without even the implied warranty of
 -  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 -  General Public License for more details.
 -
 -  You should have received a copy of the GNU General Public License along
 -  with this program; if not, write to the Free Software Foundation, Inc.,
 -  51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 -
 -
-->
<refentry id="fn_http_client_ext">
  <refmeta>
    <refentrytitle>http_client_ext</refentrytitle>
    <refmiscinfo>ws</refmiscinfo>
  </refmeta>
  <refnamediv>
    <refname>http_client_ext</refname>
    <refpurpose>returns a varchar containing the body of the request uri</refpurpose>
  </refnamediv>
  <refsynopsisdiv>
    <funcsynopsis id="fsyn_http_client_ext">
      <funcprototype id="fprot_http_client_ext">
        <funcdef>varchar <function>http_client_ext</function></funcdef>
        <paramdef>in <parameter>url</parameter> varchar</paramdef>
        <paramdef><optional>in <parameter>uid</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>pwd</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>http_method</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>http_headers</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>body</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>cert_file</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>cert_pwd</parameter> varchar</optional></paramdef>
        <paramdef>inout <parameter>headers</parameter> any</paramdef>
        <paramdef><optional>in <parameter>timeout</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>proxy</parameter> varchar</optional></paramdef>
        <paramdef><optional>in <parameter>ca_certs</parameter> varchar</optional></paramdef>        
        <paramdef><optional>in <parameter>insecure </parameter> integer</optional></paramdef>                
        <paramdef><optional>in <parameter>n_redirects</parameter> integer</optional></paramdef>                       
      </funcprototype>
    </funcsynopsis>
  </refsynopsisdiv>
  <refsect1 id="desc_http_client_ext"><title>Description</title>
    <para>This function is used to perform HTTP operations to retrieve
generic content and/or to perform generic operations over HTTP/HTTPS protocols.
It also supports HTTP authentication based on username/password credentials.</para>
    <para>If the URL is https: an no x509 certificate given then it will operate as https client w/o client certificate.</para>
  </refsect1>
  <refsect1 id="params_http_client_ext"><title>Parameters</title>
    <refsect2><title>url</title>
      <para>target URL (http: or https: are supported)</para></refsect2>
    <refsect2><title>uid</title>
      <para>user name</para></refsect2>
    <refsect2><title>pwd</title>
      <para>user password</para></refsect2>
    <refsect2><title>http_method</title>
      <para>'GET', 'POST', 'HEAD' or 'PUT'</para></refsect2>
    <refsect2><title>http_headers</title>
      <para>a string containing a HTTP headers supplied by application</para></refsect2>
    <refsect2><title>body</title>
      <para>content to be sent</para></refsect2>
    <refsect2><title>cert_file</title>
      <para>cpath to the certificate file where is stored
       x509 certificate, private key and CA certificates</para>
      <para>Can accept 'db:' notation, i.e. can use also keys stored in Virtuoso PKI repository.
      </para>        
       </refsect2>
    <refsect2><title>cert_pwd</title>
      <para>password for opening the certificate file.</para></refsect2>
    <refsect2><title>headers</title>
      <para>return headers from the http reply.</para></refsect2>
    <refsect2><title>timeout</title>
      <para>use to set how many seconds to wait for reply from the client</para></refsect2>
    <refsect2><title>proxy</title>
      <para>supports:</para>
<programlisting><![CDATA[
http://[user:pass@]host:port - user & pass are optional
]]></programlisting>
<programlisting><![CDATA[
socks4://[user:pass@]host:port - user & pass are optional
]]></programlisting>
<programlisting><![CDATA[
socks5://[user:pass@]host:port - user & pass are optional
]]></programlisting>
<programlisting><![CDATA[
socks5-host://[user:pass@]host:port - user & pass are optional
]]></programlisting>
      <para>In the INI file, in section HTTPServer should be set:</para>
<programlisting><![CDATA[
HTTPProxyServer       = proxytest:3128
HTTPProxyExceptions   = localhost:8890, 127.0.0.1:8890
]]></programlisting>
      <para>Exception could be also 127.0.0.* i.e. there could have also wildcard.</para>
    </refsect2>
    <refsect2><title>ca_certs</title>
      <para>Certificate CA. Default is null.</para>
    </refsect2> 
    <refsect2><title>insecure</title>
      <para>Sets secure or not. Default is 0.</para>
    </refsect2>     
    <refsect2><title>n_redirects</title>
      <para>By default int zero. If is given value greater than zero, so many redirects will be 
followed by client. Thus in pl no need to look at 30x response, just can add this number to 
follow the redirects.</para>
    </refsect2>    
  </refsect1>
</refentry>