internet.html

来自「perl教程」· HTML 代码 · 共 1,063 行 · 第 1/5 页

HTML
1,063
字号
    <span class="variable">$HTTP</span><span class="operator">-&gt;</span><span class="variable">SetOption</span><span class="operator">(</span><span class="variable">INTERNET_OPTION_USERNAME</span><span class="operator">,</span><span class="string">"dada"</span><span class="operator">);</span>
</pre>
</dd>
</li>
<dt><strong><a name="item_setstatuscallback">SetStatusCallback</a></strong>

<dd>
<p>Initializes the callback routine used to return data about the
progress of an asynchronous operation.</p>
</dd>
<dd>
<p>Example:</p>
</dd>
<dd>
<pre>
    <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">SetStatusCallback</span><span class="operator">();</span>
</pre>
</dd>
<dd>
<p>This is one of the step required to perform asynchronous operations;
the complete procedure is:</p>
</dd>
<dd>
<pre>
    <span class="comment"># use the INTERNET_FLAG_ASYNC when initializing</span>
    <span class="variable">$params</span><span class="operator">{</span><span class="string">'flags'</span><span class="operator">}</span><span class="operator">=</span><span class="variable">INTERNET_FLAG_ASYNC</span><span class="operator">;</span>
    <span class="variable">$INET</span> <span class="operator">=</span> <span class="variable">new</span> <span class="variable">Win32::Internet</span><span class="operator">(\</span><span class="variable">%params</span><span class="operator">);</span>
</pre>
</dd>
<dd>
<pre>
    <span class="comment"># initialize the callback routine</span>
    <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">SetStatusCallback</span><span class="operator">();</span>
</pre>
</dd>
<dd>
<pre>
    <span class="comment"># specify the context parameter (the last 1 in this case)</span>
    <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">HTTP</span><span class="operator">(</span><span class="variable">$HTTP</span><span class="operator">,</span> <span class="string">"www.yahoo.com"</span><span class="operator">,</span> <span class="string">"anonymous"</span><span class="operator">,</span> <span class="string">"dada\@divinf.it"</span><span class="operator">,</span> <span class="number">80</span><span class="operator">,</span> <span class="number">0</span><span class="operator">,</span> <span class="number">1</span><span class="operator">);</span>
</pre>
</dd>
<dd>
<p>At this point, control returns immediately to Perl and $INET-&gt;<a href="#item_error"><code>Error()</code></a>
will return 997, which means an asynchronous I/O operation is
pending.  Now, you can call</p>
</dd>
<dd>
<pre>
    <span class="variable">$HTTP</span><span class="operator">-&gt;</span><span class="variable">GetStatusCallback</span><span class="operator">(</span><span class="number">1</span><span class="operator">);</span>
</pre>
</dd>
<dd>
<p>in a loop to verify what's happening; see also <code>GetStatusCallback</code>.</p>
</dd>
</li>
<dt><strong><a name="item_timeconvert_time">TimeConvert time</a></strong>

<dt><strong><a name="item_timeconvert_seconds_2c_minute_2c_hours_2c_day_2c_m">TimeConvert seconds, minute, hours, day, month, year,
                  day_of_week, RFC</a></strong>

<dd>
<p>The first form takes a HTTP date/time string and returns the date/time
converted in the following array: <em>seconds, minute, hours, day,
month, year, day_of_week</em>.</p>
</dd>
<dd>
<p>The second form does the opposite (or at least it should, because
actually seems to be malfunctioning): it takes the values and returns
an HTTP date/time string, in the RFC format specified by the <em>RFC</em>
parameter (OK, I didn't find yet any accepted value in the range
0..2000, let me know if you have more luck with it).</p>
</dd>
<dd>
<p>Example:</p>
</dd>
<dd>
<pre>
    <span class="operator">(</span><span class="variable">$sec</span><span class="operator">,</span> <span class="variable">$min</span><span class="operator">,</span> <span class="variable">$hour</span><span class="operator">,</span> <span class="variable">$day</span><span class="operator">,</span> <span class="variable">$mday</span><span class="operator">,</span> <span class="variable">$year</span><span class="operator">,</span> <span class="variable">$wday</span><span class="operator">)</span> <span class="operator">=</span>
       <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">TimeConvert</span><span class="operator">(</span><span class="string">"Sun, 26 Jan 1997 20:01:52 GMT"</span><span class="operator">);</span>
</pre>
</dd>
<dd>
<pre>
    <span class="comment"># the opposite DOESN'T WORK! which value should $RFC have???</span>
    <span class="variable">$time</span> <span class="operator">=</span> <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">TimeConvert</span><span class="operator">(</span><span class="number">52</span><span class="operator">,</span> <span class="number">1</span><span class="operator">,</span> <span class="number">20</span><span class="operator">,</span> <span class="number">26</span><span class="operator">,</span> <span class="number">1</span><span class="operator">,</span> <span class="number">1997</span><span class="operator">,</span> <span class="number">0</span><span class="operator">,</span> <span class="variable">$RFC</span><span class="operator">);</span>
</pre>
</dd>
</li>
<dt><strong><a name="item_useragent__5bname_5d">UserAgent [name]</a></strong>

<dd>
<p>Reads or sets the user agent used for HTTP requests.  If no <em>name</em>
parameter is specified, the current value is returned; otherwise, the
user agent is set to <em>name</em>.  See also <code>QueryOption</code> and
<code>SetOption</code>.</p>
</dd>
<dd>
<p>Example:</p>
</dd>
<dd>
<pre>
    <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">UserAgent</span><span class="operator">(</span><span class="string">"Mozilla/3.0"</span><span class="operator">);</span>
    <span class="variable">$useragent</span> <span class="operator">=</span> <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">UserAgent</span><span class="operator">();</span>
</pre>
</dd>
</li>
<dt><strong><a name="item_username__5bname_5d">Username [name]</a></strong>

<dd>
<p>Reads or sets the username used for an <code>FTP</code> or <code>HTTP</code> connection.
If no <em>name</em> parameter is specified, the current value is returned;
otherwise, the username is set to <em>name</em>.  See also <code>Password</code>,
<code>QueryOption</code> and SetOption.</p>
</dd>
<dd>
<p>Example:</p>
</dd>
<dd>
<pre>
    <span class="variable">$HTTP</span><span class="operator">-&gt;</span><span class="variable">Username</span><span class="operator">(</span><span class="string">"dada"</span><span class="operator">);</span>
    <span class="variable">$username</span> <span class="operator">=</span> <span class="variable">$HTTP</span><span class="operator">-&gt;</span><span class="variable">Username</span><span class="operator">();</span>
</pre>
</dd>
</li>
<dt><strong><a name="item_version">Version</a></strong>

<dd>
<p>Returns the version numbers for the Win32::Internet package and the
WININET.DLL version, as an array or string, depending on the context.
The string returned will contain &quot;package_version/DLL_version&quot;, while
the array will contain: &quot;package_version&quot;, &quot;DLL_version&quot;.</p>
</dd>
<dd>
<p>Example:</p>
</dd>
<dd>
<pre>
    <span class="variable">$version</span> <span class="operator">=</span> <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">Version</span><span class="operator">();</span> <span class="comment"># should return "0.06/4.70.1215"</span>
    <span class="variable">@version</span> <span class="operator">=</span> <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">Version</span><span class="operator">();</span> <span class="comment"># should return ("0.06", "4.70.1215")</span>
</pre>
</dd>
</li>
</dl>
<p>
</p>
<h2><a name="ftp_functions">FTP Functions</a></h2>
<p><strong>General Note</strong></p>
<p>All methods assume that you have the following lines:</p>
<pre>
    <span class="keyword">use</span> <span class="variable">Win32::Internet</span><span class="operator">;</span>
    <span class="variable">$INET</span> <span class="operator">=</span> <span class="variable">new</span> <span class="variable">Win32::Internet</span><span class="operator">();</span>
    <span class="variable">$INET</span><span class="operator">-&gt;</span><span class="variable">FTP</span><span class="operator">(</span><span class="variable">$FTP</span><span class="operator">,</span> <span class="string">"hostname"</span><span class="operator">,</span> <span class="string">"username"</span><span class="operator">,</span> <span class="string">"password"</span><span class="operator">);</span>
</pre>
<p>somewhere before the method calls; in other words, we assume that you
have an Internet object called $INET and an open FTP session called
$FTP.</p>
<p>See <code>new</code> and <code>FTP</code> for more information.</p>
<p><strong>Methods</strong></p>
<dl>
<dt><strong><a name="item_ascii">Ascii</a></strong>

<dt><strong><a name="item_asc">Asc</a></strong>

<dd>
<p>Sets the ASCII transfer mode for this FTP session.  It will be applied
to the subsequent <code>Get</code> functions.  See also the <a href="#item_binary"><code>Binary</code></a> and
<code>Mode</code> function.</p>
</dd>
<dd>
<p>Example:</p>
</dd>
<dd>
<pre>
    <span class="variable">$FTP</span><span class="operator">-&gt;</span><span class="variable">Ascii</span><span class="operator">();</span>
</pre>
</dd>
</li>
<dt><strong><a name="item_binary">Binary</a></strong>

<dt><strong><a name="item_bin">Bin</a></strong>

<dd>
<p>Sets the binary transfer mode for this FTP session.  It will be
applied to the subsequent <code>Get</code> functions.  See also the <a href="#item_ascii"><code>Ascii</code></a> and
<code>Mode</code> function.</p>
</dd>
<dd>
<p>Example:</p>
</dd>
<dd>
<pre>
    <span class="variable">$FTP</span><span class="operator">-&gt;</span><span class="variable">Binary</span><span class="operator">();</span>
</pre>
</dd>
</li>
<dt><strong><a name="item_cd_path">Cd path</a></strong>

<dt><strong><a name="item_cwd_path">Cwd path</a></strong>

<dt><strong><a name="item_chdir_path">Chdir path</a></strong>

<dd>
<p>Changes the current directory on the FTP remote host.  Returns <em>path</em>
or <a href="../../lib/Pod/perlfunc.html#item_undef"><code>undef</code></a> on error.</p>
</dd>
<dd>
<p>Example:</p>
</dd>
<dd>
<pre>
    <span class="variable">$FTP</span><span class="operator">-&gt;</span><span class="variable">Cd</span><span class="operator">(</span><span class="string">

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?