获取远程参数
<p>[TOC]</p>
<h5>简要描述</h5>
<p>获取指定面板、指定控制器的远程参数。</p>
<ul>
<li>若面板不存在,则返回远程参数为空。</li>
<li>若控制器不存在,或控制器已绑定面板但与指定的面板不是同一个,则返回指定面板的默认远程参数。</li>
<li>若控制器未绑定任何面板,则控制器会自绑定指定面板,并返回面板的默认远程参数。</li>
</ul>
<h5>请求URL</h5>
<ul>
<li><code>http://api.coocheck.com/check</code></li>
<li><code>https://api.coocheck.com/check</code></li>
</ul>
<h5>请求方式</h5>
<ul>
<li>GET </li>
</ul>
<h5>参数</h5>
<table>
<thead>
<tr>
<th style="text-align: left;">参数名</th>
<th style="text-align: left;">必选</th>
<th style="text-align: left;">类型</th>
<th>说明</th>
<th style="text-align: left;">示例</th>
</tr>
</thead>
<tbody>
<tr>
<td style="text-align: left;">panel</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string(39位)</td>
<td>面板的uid,指定获取哪个面板的远程参数。</td>
<td style="text-align: left;">pn-a695393d-15b7-4f8d-9a7d-c461417e5c8d</td>
</tr>
<tr>
<td style="text-align: left;">code</td>
<td style="text-align: left;">是</td>
<td style="text-align: left;">string(7位)</td>
<td>控制器的code,指定获取哪个控制器填写的远程参数。</td>
<td style="text-align: left;">c4afjnL</td>
</tr>
<tr>
<td style="text-align: left;">type</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>返回远程参数的数据格式,可选值<code>ini</code>,<code>json</code>,<code>xml</code>。默认json。</td>
<td style="text-align: left;">xml</td>
</tr>
<tr>
<td style="text-align: left;">encode</td>
<td style="text-align: left;">否</td>
<td style="text-align: left;">string</td>
<td>返回远程参数的文字编码方式,可选值<code>utf8</code>,<code>gbk</code>,<code>gb</code>。默认utf8,其中gb兼容GB2312与GB18030两种编码。</td>
<td style="text-align: left;">gbk</td>
</tr>
</tbody>
</table>
<h5>返回内容示例</h5>
<p>type为<code>ini</code>:</p>
<pre><code class="language-ini">key1=1
key2=5.3
key3=true
key4=你好
submited_at=1721788956</code></pre>
<p>type为<code>json</code>:</p>
<pre><code class="language-json">{
&quot;key1&quot;: 1,
&quot;key2&quot;: 5.3,
&quot;key3&quot;: true,
&quot;key4&quot;: &quot;你好&quot;,
&quot;submited_at&quot;: 1721788956,
}</code></pre>
<p>type为<code>xml</code>:</p>
<pre><code class="language-xml">&lt;root&gt;
&lt;field name=&quot;key1&quot;&gt;1&lt;/field&gt;
&lt;field name=&quot;key2&quot;&gt;5.3&lt;/field&gt;
&lt;field name=&quot;key3&quot;&gt;true&lt;/field&gt;
&lt;field name=&quot;key4&quot;&gt;你好&lt;/field&gt;
&lt;field name=&quot;submited_at&quot;&gt;1721788956&lt;/field&gt;
&lt;/root&gt;</code></pre>
<p>远程参数默认自带<code>submited_at</code>参数,记录的是最近一次用户更新远程参数的时间戳。开发者可以使用该时间戳判断有用户最近有没有更新过远程参数。</p>
<h5>注意事项</h5>
<ul>
<li>请求远程参数时,会生成0.5-1分钟的缓存,缓存失效前控制器更新的远程参数不会立即获取到,需等待缓存失效。</li>
<li>通常,获取的远程参数是基于面板的<strong>已发布</strong>远程参数内容;面板可指定测试用控制器,如果传入的控制器code参数对应的是控制器,正好是面板指定测试用控制器,则获取的远程参数是<strong>草稿</strong>远程参数内容。</li>
</ul>