MAC vendor lookup: Difference between revisions

m
→‎{{header|Phix}}: added syntax colouring, marked p2js incompatible
(Corrected tags)
m (→‎{{header|Phix}}: added syntax colouring, marked p2js incompatible)
Line 783:
=={{header|Phix}}==
{{libheader|Phix/libcurl}}
<!--<lang Phix>(notonline)-->
<lang Phix>string test = "00-11-22-33-44-55-66" -- CIMSYS Inc
<span style="color: #008080;">without</span> <span style="color: #008080;">js</span> <span style="color: #000080;font-style:italic;">-- libcurl</span>
--string test = "10-11-22-33-44-55-66" -- N/A
<span style="color: #004080;">string</span> <span style="color: #000000;">test</span> <span style="color: #0000FF;">=</span> <span style="color: #008000;">"00-11-22-33-44-55-66"</span> <span style="color: #000080;font-style:italic;">-- CIMSYS Inc
include builtins/libcurl.e
<lang Phix> --string test = "0010-11-22-33-44-55-66" -- CIMSYS IncN/A</span>
curl_global_init()
<span style="color: #008080;">include</span> <span style="color: #000000;">builtins</span><span style="color: #0000FF;">/</span><span style="color: #000000;">libcurl</span><span style="color: #0000FF;">.</span><span style="color: #000000;">e</span>
atom curl = curl_easy_init()
<span style="color: #7060A8;">curl_global_init</span><span style="color: #0000FF;">()</span>
string url = sprintf("http://api.macvendors.com/%s",{test})
<span style="color: #004080;">atom</span> <span style="color: #000000;">curl</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">curl_easy_init</span><span style="color: #0000FF;">()</span>
curl_easy_setopt(curl, CURLOPT_URL, url)
<span style="color: #004080;">string</span> <span style="color: #000000;">url</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">sprintf</span><span style="color: #0000FF;">(</span><span style="color: #008000;">"http://api.macvendors.com/%s"</span><span style="color: #0000FF;">,{</span><span style="color: #000000;">test</span><span style="color: #0000FF;">})</span>
object res = curl_easy_perform_ex(curl)
<span style="color: #7060A8;">curl_easy_setopt</span><span style="color: #0000FF;">(</span><span style="color: #000000;">curl</span><span style="color: #0000FF;">,</span> <span style="color: #004600;">CURLOPT_URL</span><span style="color: #0000FF;">,</span> <span style="color: #000000;">url</span><span style="color: #0000FF;">)</span>
if string(res) then
<span style="color: #004080;">object</span> <span style="color: #000000;">res</span> <span style="color: #0000FF;">=</span> <span style="color: #7060A8;">curl_easy_perform_ex</span><span style="color: #0000FF;">(</span><span style="color: #000000;">curl</span><span style="color: #0000FF;">)</span>
if res="Vendor not found"
<span style="color: #008080;">if</span> <span style="color: #004080;">string</span><span style="color: #0000FF;">(</span><span style="color: #000000;">res</span><span style="color: #0000FF;">)</span> <span style="color: #008080;">then</span>
or res=`{"errors":{"detail":"Not Found"}}` then
<span style="color: #008080;">if</span> <span style="color: #000000;">res</span><span style="color: #0000FF;">=</span><span style="color: #008000;">"Vendor not found"</span>
res = "N/A"
<span style="color: #008080;">or</span> <span style="color: #000000;">res</span><span style="color: #0000FF;">=</span><span style="color: #008000;">`{"errors":{"detail":"Not Found"}}`</span> <span style="color: #008080;">then</span>
end if
<span style="color: #000000;">res</span> <span style="color: #0000FF;">=</span> <span style="color: #008000;">"N/A"</span>
?res
<span style="color: #008080;">end</span> <span style="color: #008080;">if</span>
else
<span style="color: #0000FF;">?</span><span style="color: #000000;">res</span>
?{"error",res}
<span style="color: #008080;">else</span>
end if
<span style="color: #0000FF;">?{</span><span style="color: #008000;">"error"</span><span style="color: #0000FF;">,</span><span style="color: #000000;">res</span><span style="color: #0000FF;">}</span>
curl_easy_cleanup(curl)
<span style="color: #008080;">end</span> <span style="color: #008080;">if</span>
curl_global_cleanup()</lang>
<span style="color: #7060A8;">curl_easy_cleanup</span><span style="color: #0000FF;">(</span><span style="color: #000000;">curl</span><span style="color: #0000FF;">)</span>
<span style="color: #7060A8;">curl_global_cleanup</span><span style="color: #0000FF;">()</span>
<!--</lang>-->
{{out}}
<pre>
7,820

edits