github.com/fzfile/BaiduPCS-Go@v0.0.0-20200606205115-4408961cf336/docs/structured_data_api_list.md (about) 1 # 结构化数据API列表 2 3 4 5 ## 更新通知: 6 7 2013.7.2 修改“创建table”接口,请求参数增加“sk” 8 9 ## 创建table 10 11 ### 功能 12 13 创建一个表,定义索引,其中包括对唯一索引的支持。 14 15 **注意:** 16 17 18 19 * 一个应用最多创建5个表,一个表上最多创建5个索引; 20 * 关于表和索引的创建规则,您可以参考“结构化数据表基本概念”; 21 22 * 为保证一致性,创建表后,可能需要等待一段时间才能用describe table接口查看到; 23 24 * 创建一张表必须带有该表所属app的密匙sk,用于之后的psstoken鉴权使用。 25 26 27 **关于“唯一索引”的说明:** 28 29 30 31 * 可以建联合的唯一索引; 32 33 * 一个table上唯一索引数量同一般索引限制,5个; 34 35 * 唯一索引不支持在表创建后在增加,所以需要在表设计的时候尽量考虑;(如确实需要,可联系我们。) 36 37 * insert的时候必须带上唯一索引的所有字段,否则会失败。 38 39 40 ### HTTP请求方式 41 42 POST 43 44 ### URL 45 46 https://pcs.baidu.com/rest/2.0/structure/table 47 48 ### 请求参数 49 50 <table> 51 52 <tbody><tr> 53 <th scope="col">参数名称 54 </th><th scope="col">类型 55 </th><th scope="col">是否必需 56 </th><th scope="col">描述 57 </th></tr> 58 <tr> 59 <td>v 60 </td><td>string 61 </td><td>否 62 </td><td>版本号,默认为“1.0”。 63 </td></tr> 64 <tr> 65 <td>method 66 </td><td>string 67 </td><td>是 68 </td><td>固定值:create。 69 </td></tr> 70 <tr> 71 <td>access_token 72 </td><td>string 73 </td><td>是 74 </td><td>开发者的应用所对应的access_token。 75 </td></tr> 76 <tr> 77 <td>table 78 </td><td>string 79 </td><td>是 80 </td><td>表名。 81 </td></tr> 82 <tr> 83 <td>sk 84 </td><td>string 85 </td><td>是 86 </td><td>该表所属app的密匙(secret key),用于psstoken鉴权使用。 87 </td></tr> 88 <tr> 89 <td>column 90 </td><td>json 91 </td><td>否 92 </td><td>列描述。 93 </td></tr> 94 <tr> 95 <td>index 96 </td><td>json 97 </td><td>否 98 </td><td>索引描述: 99 100 * 1:表示升序索引 101 102 * -1:表示降序索引 103 </td></tr></tbody></table> 104 105 返回参数 106 <table> 107 108 <tbody><tr> 109 <th scope="col">参数名称 110 </th><th scope="col">类型 111 </th><th scope="col">描述 112 </th></tr> 113 <tr> 114 <td>error_code 115 </td><td>number 116 </td><td>错误码, 如果不出错, 则返回值没有该字段。 117 </td></tr> 118 <tr> 119 <td>error_msg 120 </td><td>string 121 </td><td>错误提示, 如果不出错, 则返回值没有该字段。 122 </td></tr> 123 <tr> 124 <td>app_id 125 </td><td>int 126 </td><td>应用对应的ID。 127 </td></tr> 128 <tr> 129 <td>table 130 </td><td>string 131 </td><td>表名。 132 </td></tr> 133 <tr> 134 <td>request_id 135 </td><td>int 136 </td><td>请求ID号。 137 </td></tr></tbody></table> 138 139 ### 示例 140 141 请求示例: 142 143 #### 1. 创建一般索引 144 145 <pre style="font-family:monospace;">$ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_create_table <span style="color: #339933;"><<</span>DELIM 146 <span style="color: #009900;">{</span> 147 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 148 <span style="color: #3366CC;">"column"</span> <span style="color: #339933;">:</span> 149 <span style="color: #009900;">{</span> 150 <span style="color: #3366CC;">"id"</span> <span style="color: #339933;">:</span> 151 <span style="color: #009900;">{</span> 152 <span style="color: #3366CC;">"description"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">""</span><span style="color: #339933;">,</span> 153 <span style="color: #3366CC;">"type"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"int"</span><span style="color: #339933;">,</span> 154 <span style="color: #3366CC;">"required"</span> <span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">true</span> 155 <span style="color: #009900;">}</span> 156 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 157 <span style="color: #3366CC;">"index"</span><span style="color: #339933;">:</span> 158 <span style="color: #009900;">{</span> 159 <span style="color: #3366CC;">"id_index"</span> <span style="color: #339933;">:</span> 160 <span style="color: #009900;">{</span> 161 <span style="color: #3366CC;">"column"</span> <span style="color: #339933;">:</span> <span style="color: #009900;">{</span><span style="color: #3366CC;">"id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">}</span> 162 <span style="color: #009900;">}</span> 163 <span style="color: #009900;">}</span> 164 <span style="color: #009900;">}</span> 165 DELIM 166 167 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 168 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/table?method=create&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347&sk=cRgk8uMGX098yMfmttoVYswcv3XKBLGX"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_create_table"</span></pre> 169 170 #### 2. 创建唯一索引 171 172 <pre style="font-family:monospace;">$ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_create_table <span style="color: #339933;"><<</span>DELIM 173 <span style="color: #009900;">{</span> 174 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 175 <span style="color: #3366CC;">"column"</span> <span style="color: #339933;">:</span> 176 <span style="color: #009900;">{</span> 177 <span style="color: #3366CC;">"id"</span> <span style="color: #339933;">:</span> 178 <span style="color: #009900;">{</span> 179 <span style="color: #3366CC;">"description"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">""</span><span style="color: #339933;">,</span> 180 <span style="color: #3366CC;">"type"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"int"</span><span style="color: #339933;">,</span> 181 <span style="color: #3366CC;">"required"</span> <span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">true</span> 182 <span style="color: #009900;">}</span> 183 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 184 <span style="color: #3366CC;">"index"</span><span style="color: #339933;">:</span> 185 <span style="color: #009900;">{</span> 186 <span style="color: #3366CC;">"id_index"</span> <span style="color: #339933;">:</span> 187 <span style="color: #009900;">{</span> 188 <span style="color: #3366CC;">"column"</span> <span style="color: #339933;">:</span> <span style="color: #009900;">{</span><span style="color: #3366CC;">"id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">}</span><span style="color: #339933;">,</span> 189 <span style="color: #3366CC;">"unique"</span> <span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">true</span> 190 <span style="color: #009900;">}</span> 191 <span style="color: #009900;">}</span> 192 <span style="color: #009900;">}</span> 193 DELIM 194 195 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 196 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/table?method=create&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347&sk=cRgk8uMGX098yMfmttoVYswcv3XKBLGX "</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_create_table"</span></pre> 197 198 ### 注意 199 200 unique字段为true,表示唯一索引;为false,则表示一般索引;不指定则默认为一般索引。 201 202 正确响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">200</span> OK 203 204 <span style="color: #009900;">{</span> 205 <span style="color: #3366CC;">"app_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 206 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 207 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">3728395580</span> 208 <span style="color: #009900;">}</span></pre> 209 出错响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">400</span> Bad Request 210 211 <span style="color: #009900;">{</span> 212 <span style="color: #3366CC;">"error_code"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">31472</span><span style="color: #339933;">,</span> 213 <span style="color: #3366CC;">"error_msg"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"table already exist"</span><span style="color: #339933;">,</span> 214 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">9085631045</span> 215 <span style="color: #009900;">}</span></pre> 216 217 218 219 ## 修改table 220 221 ### 功能 222 223 修改一个表,添加或者删除索引 224 225 ### HTTP请求方式 226 227 POST 228 229 ### URL 230 231 https://pcs.baidu.com/rest/2.0/structure/table 232 233 ### 请求参数 234 235 <table> 236 237 <tbody><tr> 238 <th scope="col">参数名称 239 </th><th scope="col">类型 240 </th><th scope="col">是否必需 241 </th><th scope="col">描述 242 </th></tr> 243 <tr> 244 <td>v 245 </td><td>string 246 </td><td>否 247 </td><td>版本号,默认为“1.0”。 248 </td></tr> 249 <tr> 250 <td>method 251 </td><td>string 252 </td><td>是 253 </td><td>固定值:alter。 254 </td></tr> 255 <tr> 256 <td>access_token 257 </td><td>string 258 </td><td>是 259 </td><td>开发者的access_token。 260 </td></tr> 261 <tr> 262 <td>table 263 </td><td>string 264 </td><td>是 265 </td><td>表名。 266 </td></tr> 267 <tr> 268 <td>add_index 269 </td><td>json 270 </td><td>否 271 </td><td>增加的索引。 272 </td></tr> 273 <tr> 274 <td>drop_index 275 </td><td>json 276 </td><td>否 277 </td><td>删除的索引。 278 </td></tr></tbody></table> 279 280 ### 返回参数 281 282 <table> 283 284 <tbody><tr> 285 <th scope="col">参数名称 286 </th><th scope="col">类型 287 </th><th scope="col">描述 288 </th></tr> 289 <tr> 290 <td>error_code 291 </td><td>number 292 </td><td>错误码,如果不出错,则返回值没有该字段。 293 </td></tr> 294 <tr> 295 <td>error_msg 296 </td><td>string 297 </td><td>错误提示,如果不出错,则返回值没有该字段。 298 </td></tr> 299 <tr> 300 <td>appid 301 </td><td>int 302 </td><td>开发者App ID。 303 </td></tr> 304 <tr> 305 <td>table 306 </td><td>string 307 </td><td>表名。 308 </td></tr> 309 <tr> 310 <td>column 311 </td><td>json 312 </td><td>列描述。 313 </td></tr> 314 <tr> 315 <td>index 316 </td><td>json 317 </td><td>索引描述: 318 319 * 1:表示升序索引; 320 321 * -1:表示降序索引。 322 </td></tr></tbody></table> 323 324 ### 示例 325 326 请求示例: <pre style="font-family:monospace;">$ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_alter_table <span style="color: #339933;"><<</span>DELIM 327 <span style="color: #009900;">{</span> 328 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 329 <span style="color: #3366CC;">"add_index"</span> <span style="color: #339933;">:</span> 330 <span style="color: #009900;">{</span> 331 <span style="color: #3366CC;">"direction"</span> <span style="color: #339933;">:</span> 332 <span style="color: #009900;">{</span> 333 <span style="color: #3366CC;">"column"</span> <span style="color: #339933;">:</span> <span style="color: #009900;">{</span><span style="color: #3366CC;">"direction"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">}</span> 334 <span style="color: #009900;">}</span> 335 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 336 <span style="color: #3366CC;">"drop_index"</span><span style="color: #339933;">:</span> 337 <span style="color: #009900;">{</span> 338 <span style="color: #3366CC;">"id_index"</span> <span style="color: #339933;">:</span> 339 <span style="color: #009900;">{</span> 340 <span style="color: #3366CC;">"column"</span> <span style="color: #339933;">:</span> <span style="color: #009900;">{</span><span style="color: #3366CC;">"id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">}</span> 341 <span style="color: #009900;">}</span> 342 <span style="color: #009900;">}</span> 343 <span style="color: #009900;">}</span> 344 DELIM 345 346 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 347 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/table?method=alter&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_alter_table"</span> 348 </pre> 349 正确响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">200</span> OK 350 351 <span style="color: #009900;">{</span> 352 <span style="color: #3366CC;">"app_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 353 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 354 <span style="color: #3366CC;">"lastindex"</span> <span style="color: #339933;">:</span> 355 <span style="color: #009900;">{</span> 356 <span style="color: #3366CC;">"direction"</span> <span style="color: #339933;">:</span> 357 <span style="color: #009900;">{</span> 358 <span style="color: #3366CC;">"column"</span> <span style="color: #339933;">:</span> 359 <span style="color: #009900;">{</span> 360 <span style="color: #3366CC;">"direction"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span> 361 <span style="color: #009900;">}</span> 362 <span style="color: #009900;">}</span> 363 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 364 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">6402295586</span> 365 <span style="color: #009900;">}</span></pre> 366 出错响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">400</span> Bad Request 367 368 <span style="color: #009900;">{</span> 369 <span style="color: #3366CC;">"error_code"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">31409</span><span style="color: #339933;">,</span> 370 <span style="color: #3366CC;">"error_msg"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"table not exist"</span><span style="color: #339933;">,</span> 371 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">9360693908</span> 372 <span style="color: #009900;">}</span></pre> 373 374 375 376 ## 删除table 377 378 ### 功能 379 380 删除一个table 381 382 ### 注意 383 384 如果drop到回收站(默认情况),则drop后该表处于不可访问状态,不能再创建同名的table。 385 386 ### HTTP请求方式 387 388 POST 389 390 ### URL 391 392 https://pcs.baidu.com/rest/2.0/structure/table 393 394 ### 请求参数 395 396 <table> 397 398 <tbody><tr> 399 <th scope="col">参数名称 400 </th><th scope="col">类型 401 </th><th scope="col">是否必需 402 </th><th scope="col">描述 403 </th></tr> 404 <tr> 405 <td>v 406 </td><td>string 407 </td><td>否 408 </td><td>版本号,默认为“1.0”。 409 </td></tr> 410 <tr> 411 <td>method 412 </td><td>string 413 </td><td>是 414 </td><td>固定值:drop。 415 </td></tr> 416 <tr> 417 <td>access_token 418 </td><td>string 419 </td><td>是 420 </td><td>开发者的App对应的access_token。 421 </td></tr> 422 <tr> 423 <td>table 424 </td><td>string 425 </td><td>是 426 </td><td>表名。 427 </td></tr> 428 <tr> 429 <td>op 430 </td><td>string 431 </td><td>否 432 </td><td>值为recycled: drop到回收站,可用restore接口恢复。 433 </td></tr></tbody></table> 434 435 返回参数 436 <table> 437 438 <tbody><tr> 439 <th scope="col">参数名称 440 </th><th scope="col">类型 441 </th><th scope="col">描述 442 </th></tr> 443 <tr> 444 <td>error_code 445 </td><td>number 446 </td><td>错误码。如果不出错,则返回值没有该字段。 447 </td></tr> 448 <tr> 449 <td>error_msg 450 </td><td>string 451 </td><td>错误提示。如果不出错,则返回值没有该字段。 452 </td></tr> 453 <tr> 454 <td>app_id 455 </td><td>int 456 </td><td>App对应的ID。 457 </td></tr> 458 <tr> 459 <td>table 460 </td><td>string 461 </td><td>表名。 462 </td></tr> 463 <tr> 464 <td>request_id 465 </td><td>int 466 </td><td>请求ID号。 467 </td></tr></tbody></table> 468 469 ### 示例 470 471 请求示例: <pre style="font-family:monospace;"> $ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_drop_table <span style="color: #339933;"><<</span>DELIM 472 <span style="color: #009900;">{</span> 473 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span> 474 <span style="color: #009900;">}</span> 475 DELIM 476 477 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 478 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/table?method=drop&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_drop_table"</span></pre> 479 正确响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">200</span> OK 480 481 <span style="color: #009900;">{</span> 482 <span style="color: #3366CC;">"app_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 483 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 484 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">3728395580</span> 485 <span style="color: #009900;">}</span> 486 487 <span style="color: #339933;"></</span>pre<span style="color: #339933;">></span> 488 出错响应示例:<span style="color: #339933;"><</span>javascript<span style="color: #339933;">></span>HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">400</span> Bad Request 489 490 <span style="color: #009900;">{</span> 491 <span style="color: #3366CC;">"error_code"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">31409</span><span style="color: #339933;">,</span> 492 <span style="color: #3366CC;">"error_msg"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"table not exist"</span><span style="color: #339933;">,</span> 493 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">9085631045</span> 494 <span style="color: #009900;">}</span></pre> 495 496 497 498 ## 从回收站恢复table 499 500 ### 功能 501 502 恢复一个在回收站中的表。 503 504 ### HTTP请求方式 505 506 POST 507 508 ### URL 509 510 https://pcs.baidu.com/rest/2.0/structure/table 511 512 ### 请求参数 513 514 <table> 515 516 <tbody><tr> 517 <th scope="col">参数名称 518 </th><th scope="col">类型 519 </th><th scope="col">是否必需 520 </th><th scope="col">描述 521 </th></tr> 522 <tr> 523 <td>v 524 </td><td>string 525 </td><td>否 526 </td><td>版本号,默认为“1.0”。 527 </td></tr> 528 <tr> 529 <td>method 530 </td><td>string 531 </td><td>是 532 </td><td>固定值:restore。 533 </td></tr> 534 <tr> 535 <td>access_token 536 </td><td>string 537 </td><td>是 538 </td><td>开发者的App对应的access_token。 539 </td></tr> 540 <tr> 541 <td>table 542 </td><td>string 543 </td><td>是 544 </td><td>表名。 545 </td></tr></tbody></table> 546 547 返回参数 548 <table> 549 550 <tbody><tr> 551 <th scope="col">参数名称 552 </th><th scope="col">类型 553 </th><th scope="col">描述 554 </th></tr> 555 <tr> 556 <td>error_code 557 </td><td>number 558 </td><td>错误码。如果不出错,则返回值没有该字段。 559 </td></tr> 560 <tr> 561 <td>error_msg 562 </td><td>string 563 </td><td>错误提示。如果不出错,则返回值没有该字段。 564 </td></tr> 565 <tr> 566 <td>app_id 567 </td><td>int 568 </td><td>App对应的ID。 569 </td></tr> 570 <tr> 571 <td>table 572 </td><td>string 573 </td><td>表名。 574 </td></tr> 575 <tr> 576 <td>request_id 577 </td><td>int 578 </td><td>请求ID号。 579 </td></tr></tbody></table> 580 581 ### 示例 582 583 请求示例: <pre style="font-family:monospace;">$ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_restore_table <span style="color: #339933;"><<</span>DELIM 584 <span style="color: #009900;">{</span> 585 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span> 586 <span style="color: #009900;">}</span> 587 DELIM 588 589 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 590 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/table?method=restore&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_restore_table"</span> 591 </pre> 592 正确响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">200</span> OK 593 <span style="color: #009900;">{</span> 594 <span style="color: #3366CC;">"app_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 595 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 596 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">3728395580</span> 597 <span style="color: #009900;">}</span></pre> 598 出错响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">400</span> Bad Request 599 <span style="color: #009900;">{</span> 600 <span style="color: #3366CC;">"error_code"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">31474</span><span style="color: #339933;">,</span> 601 <span style="color: #3366CC;">"error_msg"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"table not drop, cannot restore"</span><span style="color: #339933;">,</span> 602 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">9085631045</span> 603 <span style="color: #009900;">}</span></pre> 604 605 606 607 ## 查看table创建信息 608 609 ### 功能 610 611 查看一个表的创建信息。 612 613 ### HTTP请求方式 614 615 POST 616 617 ### URL 618 619 https://pcs.baidu.com/rest/2.0/structure/table 620 621 ### 请求参数 622 623 <table> 624 625 <tbody><tr> 626 <th scope="col">参数名称 627 </th><th scope="col">类型 628 </th><th scope="col">是否必需 629 </th><th scope="col">描述 630 </th></tr> 631 <tr> 632 <td>v 633 </td><td>string 634 </td><td>否 635 </td><td>版本号, 默认为“1.0”。 636 </td></tr> 637 <tr> 638 <td>method 639 </td><td>string 640 </td><td>是 641 </td><td>固定值:describe。 642 </td></tr> 643 <tr> 644 <td>access_token 645 </td><td>string 646 </td><td>是 647 </td><td>开发者的App对应的access_token。 648 </td></tr> 649 <tr> 650 <td>table 651 </td><td>string 652 </td><td>是 653 </td><td>表名。 654 </td></tr></tbody></table> 655 656 返回参数 657 <table> 658 659 <tbody><tr> 660 <th scope="col">参数名称 661 </th><th scope="col">类型 662 </th><th scope="col">描述 663 </th></tr> 664 <tr> 665 <td>error_code 666 </td><td>number 667 </td><td>错误码。如果不出错,则返回值没有该字段。 668 </td></tr> 669 <tr> 670 <td>error_msg 671 </td><td>string 672 </td><td>错误提示。如果不出错,则返回值没有该字段。 673 </td></tr> 674 <tr> 675 <td>app_id 676 </td><td>int 677 </td><td>App对应的ID。 678 </td></tr> 679 <tr> 680 <td>table 681 </td><td>string 682 </td><td>表名。 683 </td></tr> 684 <tr> 685 <td>request_id 686 </td><td>int 687 </td><td>请求ID号。 688 </td></tr> 689 <tr> 690 <td>column 691 </td><td>json 692 </td><td>表的列描述。 693 </td></tr> 694 <tr> 695 <td>index 696 </td><td>json 697 </td><td>表的索引描述。 698 </td></tr> 699 <tr> 700 <td>quota 701 </td><td>int 702 </td><td>该表单个用户最大的条目数限制。 703 </td></tr> 704 <tr> 705 <td>auth_code 706 </td><td>string 707 </td><td>第三方应用请忽略此参数。 708 </td></tr></tbody></table> 709 710 ### 示例 711 712 请求示例: <pre style="font-family:monospace;"> $ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_describe_table <span style="color: #339933;"><<</span>DELIM 713 <span style="color: #009900;">{</span> 714 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span> 715 <span style="color: #009900;">}</span> 716 DELIM 717 718 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 719 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/table?method=describe&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_describe_table"</span></pre> 720 正确响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">200</span> OK 721 <span style="color: #009900;">{</span> 722 <span style="color: #3366CC;">"appid"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 723 <span style="color: #3366CC;">"table"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists008"</span><span style="color: #339933;">,</span> 724 <span style="color: #3366CC;">"status"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">,</span> 725 <span style="color: #3366CC;">"ctime"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1347417209</span><span style="color: #339933;">,</span> 726 <span style="color: #3366CC;">"mtime"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1347417209</span><span style="color: #339933;">,</span> 727 <span style="color: #3366CC;">"cluster"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"cluster0"</span><span style="color: #339933;">,</span> 728 <span style="color: #3366CC;">"subtablenum"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 729 <span style="color: #3366CC;">"column"</span> <span style="color: #339933;">:</span> 730 <span style="color: #009900;">{</span> 731 <span style="color: #3366CC;">"id"</span> <span style="color: #339933;">:</span> 732 <span style="color: #009900;">{</span> 733 <span style="color: #3366CC;">"description"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">""</span><span style="color: #339933;">,</span> 734 <span style="color: #3366CC;">"type"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"number"</span><span style="color: #339933;">,</span> 735 <span style="color: #3366CC;">"required"</span> <span style="color: #339933;">:</span> <span style="color: #003366; font-weight: bold;">true</span> 736 <span style="color: #009900;">}</span> 737 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 738 <span style="color: #3366CC;">"index"</span><span style="color: #339933;">:</span> 739 <span style="color: #009900;">{</span> 740 <span style="color: #3366CC;">"id_index"</span> <span style="color: #339933;">:</span> 741 <span style="color: #009900;">{</span> 742 <span style="color: #3366CC;">"column"</span> <span style="color: #339933;">:</span> <span style="color: #009900;">{</span><span style="color: #3366CC;">"id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #009900;">}</span> 743 <span style="color: #009900;">}</span> 744 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 745 <span style="color: #3366CC;">"quota"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">10000</span><span style="color: #339933;">,</span> 746 <span style="color: #3366CC;">"auth_code"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"e3725dd9a7cbd0a5e3eb7928ab922d33"</span><span style="color: #339933;">,</span> 747 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">2707788940</span> 748 <span style="color: #009900;">}</span></pre> 749 出错响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">400</span> Bad Request 750 751 <span style="color: #009900;">{</span> 752 <span style="color: #3366CC;">"error_code"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">31409</span><span style="color: #339933;">,</span> 753 <span style="color: #3366CC;">"error_msg"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"table not exist"</span><span style="color: #339933;">,</span> 754 <span style="color: #3366CC;">"request_id"</span> <span style="color: #339933;">:</span> <span style="color: #CC0000;">5574355722</span> 755 <span style="color: #009900;">}</span></pre> 756 757 758 759 ## 添加record 760 761 ### 功能 762 763 新增record,每次调用都会新增传入的record。 764 765 ### HTTP请求方式 766 767 POST 768 769 ### URL 770 771 https://pcs.baidu.com/rest/2.0/structure/data 772 773 ### 请求参数 774 775 <table> 776 777 <tbody><tr> 778 <th scope="col">参数名称 779 </th><th scope="col">类型 780 </th><th scope="col">是否必需 781 </th><th scope="col">描述 782 </th></tr> 783 <tr> 784 <td>v 785 </td><td>string 786 </td><td>否 787 </td><td>版本号,默认为“1.0”。 788 </td></tr> 789 <tr> 790 <td>method 791 </td><td>string 792 </td><td>是 793 </td><td>固定值:insert。 794 </td></tr> 795 <tr> 796 <td>access_token 797 </td><td>string 798 </td><td>是 799 </td><td>用户的access_token,HTTPS调用时必须使用。 800 </td></tr> 801 <tr> 802 <td>table 803 </td><td>string 804 </td><td>是 805 </td><td>要插入的目标表名。 806 </td></tr> 807 <tr> 808 <td>records 809 </td><td>json array 810 </td><td>是 811 </td><td>需要插入的record JSON对象构成的数组。 812 </td></tr></tbody></table> 813 814 返回参数 815 <table> 816 817 <tbody><tr> 818 <th scope="col">参数名称 819 </th><th scope="col">类型 820 </th><th scope="col">描述 821 </th></tr> 822 <tr> 823 <td>error_code 824 </td><td>number 825 </td><td>错误码。如果不出错,则返回值没有该字段。 826 </td></tr> 827 <tr> 828 <td>error_msg 829 </td><td>string 830 </td><td>错误提示。如果不出错,则返回值没有该字段。 831 </td></tr> 832 <tr> 833 <td>records 834 </td><td>json array 835 </td><td>返回服务器端已经处理的records(_key, _mtime, _ctime)列表,顺序与输入顺序一致;如果一个请求包含多个record,遇到第一个出错record即中止,返回的records只包含已处理成功的key。 836 </td></tr></tbody></table> 837 838 ### 示例 839 840 请求示例: 841 <pre style="font-family:monospace;">cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_insert_request <span style="color: #339933;"><<</span>DELIM 842 <span style="color: #009900;">{</span> 843 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 844 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 845 <span style="color: #009900;">{</span> 846 <span style="color: #3366CC;">"id"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">85617</span><span style="color: #339933;">,</span> 847 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"刘德华"</span><span style="color: #339933;">,</span> 848 <span style="color: #3366CC;">"type"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"男歌手"</span><span style="color: #339933;">,</span> 849 <span style="color: #3366CC;">"intro"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"香港著名歌手、演员"</span><span style="color: #339933;">,</span> 850 <span style="color: #3366CC;">"add_time"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1340949289</span><span style="color: #339933;">,</span> 851 <span style="color: #3366CC;">"language"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"国语"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"粤语"</span><span style="color: #009900;">]</span><span style="color: #339933;">,</span> 852 <span style="color: #3366CC;">"tags"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"香港电影金像奖"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"四大天王"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"东亚唱片"</span><span style="color: #009900;">]</span><span style="color: #339933;">,</span> 853 <span style="color: #3366CC;">"top_song"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 854 <span style="color: #3366CC;">"id"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">3</span><span style="color: #339933;">,</span> 855 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"爱你一万年"</span> 856 <span style="color: #009900;">}</span> 857 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 858 <span style="color: #009900;">{</span> 859 <span style="color: #3366CC;">"id"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">85618</span><span style="color: #339933;">,</span> 860 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"凤凰传奇"</span><span style="color: #339933;">,</span> 861 <span style="color: #3366CC;">"type"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"组合"</span><span style="color: #339933;">,</span> 862 <span style="color: #3366CC;">"intro"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"中国大陆具有广泛知名度的男女二人音乐组合"</span><span style="color: #339933;">,</span> 863 <span style="color: #3366CC;">"add_time"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1340949289</span><span style="color: #339933;">,</span> 864 <span style="color: #3366CC;">"language"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"国语"</span><span style="color: #009900;">]</span><span style="color: #339933;">,</span> 865 <span style="color: #3366CC;">"tags"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"月亮之上"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"最炫民族风"</span><span style="color: #009900;">]</span><span style="color: #339933;">,</span> 866 <span style="color: #3366CC;">"top_song"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 867 <span style="color: #3366CC;">"id"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">5</span><span style="color: #339933;">,</span> 868 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"月亮之上"</span> 869 <span style="color: #009900;">}</span> 870 <span style="color: #009900;">}</span> 871 <span style="color: #009900;">]</span> 872 <span style="color: #009900;">}</span> 873 DELIM 874 875 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=insert&access_token=2.b06c3e86610fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_select1_request"</span></pre> 876 正确响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">200</span> OK 877 878 <span style="color: #009900;">{</span> 879 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span><span style="color: #009900;">[</span> 880 <span style="color: #009900;">{</span> 881 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"f44603de003c57d5-1346066442"</span><span style="color: #339933;">,</span> 882 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1346066442</span><span style="color: #339933;">,</span> 883 <span style="color: #3366CC;">"_ctime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1346066442</span> 884 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 885 <span style="color: #009900;">{</span> 886 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"1aaef0010c012db7-1346066442"</span><span style="color: #339933;">,</span> 887 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1346066442</span><span style="color: #339933;">,</span> 888 <span style="color: #3366CC;">"_ctime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1346066442</span> 889 <span style="color: #009900;">}</span> 890 <span style="color: #009900;">]</span><span style="color: #339933;">,</span> 891 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">3728395580</span> 892 <span style="color: #009900;">}</span></pre> 893 出错响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">400</span> Bad Request 894 895 <span style="color: #009900;">{</span> 896 <span style="color: #3366CC;">"error_code"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">31430</span><span style="color: #339933;">,</span> 897 <span style="color: #3366CC;">"error_msg"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"bad record"</span><span style="color: #339933;">,</span> 898 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">0</span> 899 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 900 <span style="color: #009900;">{</span><span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"7d4febca4a68e763-1344915172"</span><span style="color: #009900;">}</span><span style="color: #339933;">,</span> 901 <span style="color: #009900;">]</span> 902 <span style="color: #009900;">}</span></pre> 903 904 905 906 ## 更新record 907 908 ### 功能 909 910 根据_key更新record;支持批量更新,但只能更新非回收站的record。 911 912 ### HTTP请求方式 913 914 POST 915 916 ### URL 917 918 https://pcs.baidu.com/rest/2.0/structure/data 919 920 ### 请求参数 921 922 <table> 923 924 <tbody><tr> 925 <th scope="col">参数名称 926 </th><th scope="col">类型 927 </th><th scope="col">是否 928 929 必需 930 931 </th><th scope="col">描述 932 </th></tr> 933 <tr> 934 <td>v 935 </td><td>string 936 </td><td>否 937 </td><td>版本号,默认为“1.0”。 938 </td></tr> 939 <tr> 940 <td>method 941 </td><td>string 942 </td><td>是 943 </td><td>固定值:update。 944 </td></tr> 945 <tr> 946 <td>access_token 947 </td><td>string 948 </td><td>是 949 </td><td>用户的access_token,HTTPS调用时必须使用。 950 </td></tr> 951 <tr> 952 <td>table 953 </td><td>string 954 </td><td>是 955 </td><td>要更新的目标表名。 956 </td></tr> 957 <tr> 958 <td>records 959 </td><td>json array 960 </td><td>是 961 </td><td>需要更新的record。 962 </td></tr> 963 <tr> 964 <td>op 965 </td><td>string 966 </td><td>否 967 </td><td> 968 969 * 当值为“merge”时,请求中record不带的column,保持旧值(默认值); 970 971 * 当值为“replace”时,参数中传的record将全量替换整个旧的record。 972 </td></tr></tbody></table> 973 974 说明: 975 976 #### 其中records是一个数组,其数组成员结构如下: 977 978 <table> 979 980 <tbody><tr> 981 <th scope="col">名称 982 </th><th scope="col">类型 983 </th><th scope="col">是否必需 984 </th><th scope="col">描述 985 </th></tr> 986 <tr> 987 <td>record 988 </td><td>json 989 </td><td>是 990 </td><td>需要更新的record,只能是一个record,并且必须指定_key。 991 </td></tr> 992 <tr> 993 <td>if-match 994 </td><td>string 995 </td><td>否 996 </td><td>条件更新,防止写操作覆盖了其它client的数据值;为上次获取该item时返回的_mtime属性,只有server端保存的_mtime和用户携带的_mtime一致时,才会进行更新操作。 997 </td></tr></tbody></table> 998 999 返回参数 1000 <table> 1001 1002 <tbody><tr> 1003 <th scope="col">参数名称 1004 </th><th scope="col">类型 1005 </th><th scope="col">描述 1006 </th></tr> 1007 <tr> 1008 <td>error_code 1009 </td><td>number 1010 </td><td>错误码。如果不出错,则返回值没有该字段。 1011 </td></tr> 1012 <tr> 1013 <td>error_msg 1014 </td><td>string 1015 </td><td>错误提示。如果不出错,则返回值没有该字段。 1016 </td></tr> 1017 <tr> 1018 <td>records 1019 </td><td>json array 1020 </td><td>返回服务器端已经处理的records(_key, _mtime)列表,顺序与输入顺序一致;如果一个请求包含多个record,遇到第一个出错record即中止,返回的records只包含已经处理成功的key。 1021 </td></tr></tbody></table> 1022 1023 ### 示例 1024 1025 请求示例: <pre style="font-family:monospace;">$ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_update_request <span style="color: #339933;"><<</span>DELIM 1026 <span style="color: #009900;">{</span> 1027 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1028 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1029 <span style="color: #009900;">{</span> 1030 <span style="color: #3366CC;">"record"</span><span style="color: #339933;">:</span> 1031 <span style="color: #009900;">{</span> 1032 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"f44603de003c57d5-1346066442"</span><span style="color: #339933;">,</span> 1033 <span style="color: #3366CC;">"id"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">85617</span><span style="color: #339933;">,</span> 1034 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"刘德华"</span><span style="color: #339933;">,</span> 1035 <span style="color: #3366CC;">"type"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"男歌手"</span><span style="color: #339933;">,</span> 1036 <span style="color: #3366CC;">"intro"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"香港著名歌手、演员"</span><span style="color: #339933;">,</span> 1037 <span style="color: #3366CC;">"add_time"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1340949289</span><span style="color: #339933;">,</span> 1038 <span style="color: #3366CC;">"language"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"国语"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"粤语"</span><span style="color: #009900;">]</span><span style="color: #339933;">,</span> 1039 <span style="color: #3366CC;">"tags"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"香港电影金像奖"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"四大天王"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"东亚唱片"</span><span style="color: #009900;">]</span> 1040 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1041 <span style="color: #3366CC;">"if-match"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1346066442</span> 1042 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1043 <span style="color: #009900;">{</span> 1044 <span style="color: #3366CC;">"record"</span><span style="color: #339933;">:</span> 1045 <span style="color: #009900;">{</span> 1046 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"1aaef0010c012db7-1346066442"</span><span style="color: #339933;">,</span> 1047 <span style="color: #3366CC;">"id"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">85618</span><span style="color: #339933;">,</span> 1048 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"凤凰传奇"</span><span style="color: #339933;">,</span> 1049 <span style="color: #3366CC;">"type"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"组合"</span><span style="color: #339933;">,</span> 1050 <span style="color: #3366CC;">"intro"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"中国大陆具有广泛知名度的男女二人音乐组合"</span><span style="color: #339933;">,</span> 1051 <span style="color: #3366CC;">"add_time"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1340949289</span><span style="color: #339933;">,</span> 1052 <span style="color: #3366CC;">"language"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"国语"</span><span style="color: #009900;">]</span><span style="color: #339933;">,</span> 1053 <span style="color: #3366CC;">"tags"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"月亮之上"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"最炫民族风"</span><span style="color: #009900;">]</span> 1054 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1055 <span style="color: #3366CC;">"if-match"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1346066442</span> 1056 <span style="color: #009900;">}</span> 1057 <span style="color: #009900;">]</span> 1058 <span style="color: #009900;">}</span> 1059 DELIM 1060 1061 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 1062 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=update&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_update_request"</span> 1063 </pre> 1064 正确响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">200</span> OK 1065 1066 <span style="color: #009900;">{</span> 1067 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span><span style="color: #009900;">[</span> 1068 <span style="color: #009900;">{</span> 1069 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"f44603de003c57d5-1346066442"</span><span style="color: #339933;">,</span> 1070 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1346066823</span> 1071 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1072 <span style="color: #009900;">{</span> 1073 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"1aaef0010c012db7-1346066442"</span><span style="color: #339933;">,</span> 1074 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1346066824</span> 1075 <span style="color: #009900;">}</span> 1076 <span style="color: #009900;">]</span><span style="color: #339933;">,</span> 1077 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">9201162933</span> 1078 <span style="color: #009900;">}</span></pre> 1079 出错响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">400</span> Bad Request 1080 1081 <span style="color: #009900;">{</span> 1082 <span style="color: #3366CC;">"error_code"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">31430</span><span style="color: #339933;">,</span> 1083 <span style="color: #3366CC;">"error_msg"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"bad record"</span><span style="color: #339933;">,</span> 1084 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">0</span> 1085 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1086 <span style="color: #009900;">]</span> 1087 <span style="color: #009900;">}</span></pre> 1088 1089 ## 删除record 1090 1091 ### 功能 1092 1093 根据_key,删除record。 1094 1095 ### HTTP请求方式 1096 1097 POST 1098 1099 ### URL 1100 1101 https://pcs.baidu.com/rest/2.0/structure/data 1102 1103 ### 请求参数 1104 1105 <table> 1106 1107 <tbody><tr> 1108 <th scope="col">参数名称 1109 </th><th scope="col">类型 1110 </th><th scope="col">是否必需 1111 </th><th scope="col">描述 1112 </th></tr> 1113 <tr> 1114 <td>v 1115 </td><td>string 1116 </td><td>否 1117 </td><td>版本号,默认为“1.0”。 1118 </td></tr> 1119 <tr> 1120 <td>method 1121 </td><td>string 1122 </td><td>是 1123 </td><td>固定值:delete。 1124 </td></tr> 1125 <tr> 1126 <td>access_token 1127 </td><td>string 1128 </td><td>是 1129 </td><td>用户access_token,HTTPS调用时必须使用。 1130 </td></tr> 1131 <tr> 1132 <td>table 1133 </td><td>string 1134 </td><td>是 1135 </td><td>要删除的目标表名。 1136 </td></tr> 1137 <tr> 1138 <td>records 1139 </td><td>json array 1140 </td><td>是 1141 </td><td>需要删除的record _key 数组。 1142 </td></tr> 1143 <tr> 1144 <td>op 1145 </td><td>string 1146 </td><td>否 1147 </td><td> 1148 1149 * 当值为“permanent”时,永久删除record;无论是普通record还是回收record。 1150 1151 * 当值为“recycled”时,将普通record放进回收站;缺省情况为放进回收站。 1152 </td></tr></tbody></table> 1153 1154 ### 说明: 1155 1156 #### 其中records是一个数组,其数组成员结构如下: 1157 1158 <table> 1159 1160 <tbody><tr> 1161 <th scope="col">名称 1162 </th><th scope="col">类型 1163 </th><th scope="col">是否必需 1164 </th><th scope="col">描述 1165 </th></tr> 1166 <tr> 1167 <td>_key 1168 </td><td>string 1169 </td><td>是 1170 </td><td>需要更新的record _key字段的值。 1171 </td></tr> 1172 <tr> 1173 <td>if-match 1174 </td><td>string 1175 </td><td>否 1176 </td><td>类似update中的条件更新值为上次获取该item时返回的_mtime属性;只有server端保存的_mtime和用户携带的_mtime一致时,才会发生delete。 1177 </td></tr></tbody></table> 1178 1179 返回参数 1180 <table> 1181 1182 <tbody><tr> 1183 <th scope="col">参数名称 1184 </th><th scope="col">类型 1185 </th><th scope="col">描述 1186 </th></tr> 1187 <tr> 1188 <td>error_code 1189 </td><td>number 1190 </td><td>错误码。如果不出错,则返回值没有该字段。 1191 </td></tr> 1192 <tr> 1193 <td>error_msg 1194 </td><td>string 1195 </td><td>错误消息。如果不出错,则返回值没有该字段。 1196 </td></tr> 1197 <tr> 1198 <td>records 1199 </td><td>json array 1200 </td><td>返回服务器端已经处理的records(_key, _mtime)列表,顺序与输入顺序一致,如果一个请求包含多个record,遇到第一个出错record即中止,返回的records 只包含已经处理成功的key。 1201 </td></tr></tbody></table> 1202 1203 ### 示例 1204 1205 请求示例: <pre style="font-family:monospace;">$ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_delete_request <span style="color: #339933;"><<</span>DELIM 1206 <span style="color: #009900;">{</span> 1207 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1208 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1209 <span style="color: #009900;">{</span> 1210 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"f44603de003c57d5-1346066442"</span><span style="color: #339933;">,</span> 1211 <span style="color: #3366CC;">"if-match"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1346066823</span> 1212 <span style="color: #009900;">}</span> 1213 <span style="color: #009900;">]</span> 1214 <span style="color: #009900;">}</span> 1215 DELIM 1216 1217 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 1218 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=delete&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_delete_request"</span> 1219 </pre> 1220 正确响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">200</span> OK 1221 1222 <span style="color: #009900;">{</span> 1223 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span><span style="color: #009900;">[</span> 1224 <span style="color: #009900;">{</span> 1225 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"f44603de003c57d5-1346066442"</span><span style="color: #339933;">,</span> 1226 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1346066823</span> 1227 <span style="color: #009900;">}</span> 1228 <span style="color: #009900;">]</span><span style="color: #339933;">,</span> 1229 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">9494352006</span> 1230 <span style="color: #009900;">}</span></pre> 1231 出错响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">400</span> Bad Request 1232 1233 <span style="color: #009900;">{</span> 1234 <span style="color: #3366CC;">"error_code"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">31430</span><span style="color: #339933;">,</span> 1235 <span style="color: #3366CC;">"error_msg"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"bad record"</span><span style="color: #339933;">,</span> 1236 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">0</span> 1237 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1238 <span style="color: #009900;">{</span><span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"7d4febca4a68e763-1344915172"</span><span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1239 <span style="color: #009900;">]</span> 1240 <span style="color: #009900;">}</span></pre> 1241 1242 1243 1244 ## 查询record 1245 1246 ### 功能 1247 1248 通过一定条件查询record,只能select非回收站的record。 1249 1250 ### HTTP请求方式 1251 1252 POST 1253 1254 ### URL 1255 1256 https://pcs.baidu.com/rest/2.0/structure/data 1257 1258 ### 请求参数 1259 1260 <table> 1261 1262 <tbody><tr> 1263 <th scope="col">参数名称 1264 </th><th scope="col">类型 1265 </th><th scope="col">是否必需 1266 </th><th scope="col">描述 1267 </th></tr> 1268 <tr> 1269 <td>v 1270 </td><td>string 1271 </td><td>否 1272 </td><td>版本号,默认为“1.0”。 1273 </td></tr> 1274 <tr> 1275 <td>method 1276 </td><td>string 1277 </td><td>是 1278 </td><td>固定值:select。 1279 </td></tr> 1280 <tr> 1281 <td>access_token 1282 </td><td>string 1283 </td><td>是 1284 </td><td>用户的access_token,HTTPS调用时必须使用。 1285 </td></tr> 1286 <tr> 1287 <td>table 1288 </td><td>string 1289 </td><td>是 1290 </td><td>查询的目标表名。 1291 </td></tr> 1292 <tr> 1293 <td>condition 1294 </td><td>json 1295 </td><td>是 1296 </td><td>查询条件,参见查询条件描述。 1297 </td></tr> 1298 <tr> 1299 <td>projection 1300 </td><td>array 1301 </td><td>否 1302 </td><td>指定需要哪些字段,_key为默认返回值。 1303 </td></tr> 1304 <tr> 1305 <td>order_by 1306 </td><td>array 1307 </td><td>否 1308 </td><td>排序字段。 1309 </td></tr> 1310 <tr> 1311 <td>start 1312 </td><td>number 1313 </td><td>否 1314 </td><td>分页用,默认为“0”,范围要求>=0。 1315 </td></tr> 1316 <tr> 1317 <td>limit 1318 </td><td>number 1319 </td><td>否 1320 </td><td>分页用,默认为“100”,范围要求[1, 10000]。 1321 </td></tr></tbody></table> 1322 1323 所支持的查询条件如下表所示: 1324 1325 <table> 1326 1327 <tbody><tr> 1328 <th scope="col">查询条件 1329 </th><th scope="col">类型 1330 </th><th scope="col">表达查询条件 1331 </th><th scope="col">示例 1332 </th></tr> 1333 <tr> 1334 <td>'=' 1335 </td><td>number/string 1336 </td><td>表示范围查询= 1337 </td><td>"name": {"=": "刘德华"} 1338 </td></tr> 1339 <tr> 1340 <td>'<' 1341 </td><td>number/string 1342 </td><td>表示范围查询< 1343 </td></tr> 1344 <tr> 1345 <td>'>' 1346 </td><td>number/string 1347 </td><td>表示范围查询> 1348 </td><td>"add_time": {">": 1340949589} 1349 </td></tr> 1350 <tr> 1351 <td>'<=' 1352 </td><td>number/string 1353 </td><td>表示范围查询<= 1354 </td></tr> 1355 <tr> 1356 <td>'>=' 1357 </td><td>number/string 1358 </td><td>表示范围查询>= 1359 </td><td>"add_time": {">=": 1340949589} 1360 </td></tr> 1361 <tr> 1362 <td>'!= ' 1363 </td><td>number/string 1364 </td><td>不等于 1365 </td><td>"add_time": {"!=": 1340949589} (coming soon) 1366 </td></tr> 1367 <tr> 1368 <td>'like' 1369 </td><td>string 1370 </td><td>SQL中like语法(不区分大小写) 1371 * 表示0到多个字符,_ 表示一个字符 1372 </td><td>"message": {"like": "%windows%"} 1373 </td></tr> 1374 <tr> 1375 <td>'like_binary' 1376 </td><td>string 1377 </td><td>SQL中binary like语法(区分大小写) 1378 * 表示0到多个字符, _ 表示一个字符 1379 </td><td>"message": {"like_binary": "%Windows%"} 1380 </td></tr> 1381 <tr> 1382 <td>'contain' 1383 </td><td>string 1384 </td><td>包含在数组中 1385 </td><td>"language": {"contain": "国语"} 1386 </td></tr> 1387 <tr> 1388 <td>'in' 1389 </td><td>array 1390 </td><td>in 1391 </td><td>"_key": {"in": ["_key1", "_key2"]} 1392 </td></tr> 1393 <tr> 1394 <td>‘notin’ 1395 </td><td>array 1396 </td><td>不在集合中 1397 </td><td>"_key": {"notin": ["_key1", "_key2"]} 1398 </td></tr></tbody></table> 1399 1400 说明: 1401 1402 (1)当“condition”条件为空时,表示获取所有record。 1403 1404 (2)根据key获取一条record,可使用如下condition条件表达: 1405 1406 "_key": {"=": "385d24b3baef3290-1344915172"} 1407 1408 (3)order_by表示支持的排序方式,它是一个数组,数组元素信息如下: 1409 1410 <table> 1411 1412 <tbody><tr> 1413 <th scope="col">Key 1414 </th><th scope="col">Value 1415 </th><th scope="col">描述 1416 </th></tr> 1417 <tr> 1418 <td>列名 1419 </td><td>asc/desc 1420 </td><td>将某列按照“asc/desc”排序。 1421 </td></tr></tbody></table> 1422 1423 返回参数 (JSON格式) 1424 <table> 1425 1426 <tbody><tr> 1427 <th scope="col">参数名称 1428 </th><th scope="col">类型 1429 </th><th scope="col">描述 1430 </th></tr> 1431 <tr> 1432 <td>error_code 1433 </td><td>number 1434 </td><td>错误码,如果不出错,则返回值没有该字段。 1435 </td></tr> 1436 <tr> 1437 <td>error_msg 1438 </td><td>string 1439 </td><td>错误提示,如果不出错,则返回值没有该字段。 1440 </td></tr> 1441 <tr> 1442 <td>count 1443 </td><td>number 1444 </td><td>总条目数。 1445 </td></tr> 1446 <tr> 1447 <td>records 1448 </td><td>json array 1449 </td><td>record 数组。 1450 </td></tr></tbody></table> 1451 1452 ### 示例 1453 1454 请求示例: 1455 1456 1. 简单查询 1457 1458 <pre style="font-family:monospace;">cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_select_request <span style="color: #339933;"><<</span>DELIM 1459 <span style="color: #009900;">{</span> 1460 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1461 <span style="color: #3366CC;">"condition"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 1462 <span style="color: #3366CC;">"and"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1463 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"刘德华"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> 1464 <span style="color: #009900;">]</span> 1465 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1466 <span style="color: #3366CC;">"order_by"</span> <span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1467 <span style="color: #009900;">{</span><span style="color: #3366CC;">"add_time"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"desc"</span> <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1468 <span style="color: #009900;">{</span><span style="color: #3366CC;">"name"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"asc"</span> <span style="color: #009900;">}</span> 1469 <span style="color: #009900;">]</span><span style="color: #339933;">,</span> 1470 <span style="color: #3366CC;">"start"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">,</span> 1471 <span style="color: #3366CC;">"limit"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">10</span> 1472 <span style="color: #009900;">}</span> 1473 DELIM 1474 1475 curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=select&access_token=2.85e37d20acd37c3a5ebc9726bd5606eb.31536000.1384932826.1175746697-309847"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_select_request"</span> <span style="color: #CC0000;">2</span><span style="color: #339933;">>/</span>dev<span style="color: #339933;">/</span><span style="color: #003366; font-weight: bold;">null</span> </pre> 1476 1477 2. 组合查询 1478 1479 <pre style="font-family:monospace;">cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_select_request <span style="color: #339933;"><<</span>DELIM 1480 <span style="color: #009900;">{</span> 1481 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1482 <span style="color: #3366CC;">"condition"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 1483 <span style="color: #3366CC;">"and"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1484 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"刘德华"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1485 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"tags"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"contain"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"四大天王"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> 1486 <span style="color: #009900;">]</span> 1487 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1488 <span style="color: #3366CC;">"projection"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"name"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"intro"</span><span style="color: #009900;">]</span> 1489 <span style="color: #009900;">}</span> 1490 DELIM 1491 1492 curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=select&access_token=2.85e37d20acd37c3a5ebc9726bd5606eb.31536000.1384932826.1175746697-309847"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_select_request"</span> <span style="color: #CC0000;">2</span><span style="color: #339933;">>/</span>dev<span style="color: #339933;">/</span><span style="color: #003366; font-weight: bold;">null</span> </pre> 1493 1494 3. select 支持对嵌套属性的查询 1495 1496 <pre style="font-family:monospace;">cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_select_request <span style="color: #339933;"><<</span>DELIM 1497 <span style="color: #009900;">{</span> 1498 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1499 <span style="color: #3366CC;">"condition"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 1500 <span style="color: #3366CC;">"and"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1501 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"top_song.name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"爱你一万年"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> 1502 <span style="color: #009900;">]</span> 1503 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1504 <span style="color: #3366CC;">"projection"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"name"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"intro"</span><span style="color: #009900;">]</span> 1505 <span style="color: #009900;">}</span> 1506 DELIM 1507 1508 curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=select&access_token=2.85e37d20acd37c3a5ebc9726bd5606eb.31536000.1384932826.1175746697-309847"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_select_request"</span> <span style="color: #CC0000;">2</span><span style="color: #339933;">>/</span>dev<span style="color: #339933;">/</span><span style="color: #003366; font-weight: bold;">null</span> <span style="color: #339933;">|</span>.<span style="color: #339933;">/</span>json_decode</pre> 1509 1510 4. or 条件支持 1511 1512 <pre style="font-family:monospace;">cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_select_request <span style="color: #339933;"><<</span>DELIM 1513 <span style="color: #009900;">{</span> 1514 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1515 <span style="color: #3366CC;">"condition"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 1516 <span style="color: #3366CC;">"or"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1517 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"刘德华"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1518 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"top_song.name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"月亮之上"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> 1519 <span style="color: #009900;">]</span> 1520 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1521 <span style="color: #3366CC;">"projection"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"name"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"intro"</span><span style="color: #009900;">]</span> 1522 <span style="color: #009900;">}</span> 1523 DELIM 1524 1525 curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=select&access_token=2.85e37d20acd37c3a5ebc9726bd5606eb.31536000.1384932826.1175746697-309847"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_select_request"</span> <span style="color: #CC0000;">2</span><span style="color: #339933;">>/</span>dev<span style="color: #339933;">/</span><span style="color: #003366; font-weight: bold;">null</span> </pre> 1526 1527 5. and/or 混合条件支持 1528 1529 <pre style="font-family:monospace;">cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_select_request <span style="color: #339933;"><<</span>DELIM 1530 <span style="color: #009900;">{</span> 1531 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1532 <span style="color: #3366CC;">"condition"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 1533 <span style="color: #3366CC;">"or"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1534 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"刘德华"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1535 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"and"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1536 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"top_song.name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"月亮之上"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1537 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"tags"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"contain"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"月亮之上"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> 1538 <span style="color: #009900;">]</span><span style="color: #009900;">}</span> 1539 <span style="color: #009900;">]</span> 1540 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1541 <span style="color: #3366CC;">"projection"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"name"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"intro"</span><span style="color: #009900;">]</span> 1542 <span style="color: #009900;">}</span> 1543 DELIM 1544 1545 curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=select&access_token=2.85e37d20acd37c3a5ebc9726bd5606eb.31536000.1384932826.1175746697-309847"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_select_request"</span> <span style="color: #CC0000;">2</span><span style="color: #339933;">>/</span>dev<span style="color: #339933;">/</span><span style="color: #003366; font-weight: bold;">null</span> </pre> 1546 响应示例:<pre style="font-family:monospace;"><span style="color: #009900;">{</span> 1547 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1548 <span style="color: #3366CC;">"count"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 1549 <span style="color: #3366CC;">"start"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">,</span> 1550 <span style="color: #3366CC;">"limit"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">0</span><span style="color: #339933;">,</span> 1551 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1552 <span style="color: #009900;">{</span> 1553 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"f44603de003c57d5-1346066442"</span><span style="color: #339933;">,</span> 1554 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"刘德华"</span><span style="color: #339933;">,</span> 1555 <span style="color: #3366CC;">"intro"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"香港著名歌手、演员"</span><span style="color: #339933;">,</span> 1556 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1557 <span style="color: #009900;">]</span> 1558 <span style="color: #009900;">}</span></pre> 1559 1560 1561 1562 ## record增量更新查询 1563 1564 ### 功能 1565 1566 数据更新增量查询接口。 1567 1568 ### HTTP请求方式 1569 1570 POST 1571 1572 ### URL 1573 1574 https://pcs.baidu.com/rest/2.0/structure/data 1575 1576 ### 请求参数 1577 1578 <table> 1579 <tbody><tr> 1580 <th scope="col">参数名称 1581 </th><th scope="col">类型 1582 </th><th scope="col">是否必需 1583 </th><th scope="col">描述 1584 </th></tr> 1585 <tr> 1586 <td>v 1587 </td><td>string 1588 </td><td>否 1589 </td><td>版本号,默认为“1.0”。 1590 </td></tr> 1591 <tr> 1592 <td>method 1593 </td><td>string 1594 </td><td>是 1595 </td><td>固定值:diff。 1596 </td></tr> 1597 <tr> 1598 <td>access_token 1599 </td><td>string 1600 </td><td>是 1601 </td><td>用户的access_token,HTTPS调用时必须使用。 1602 </td></tr> 1603 <tr> 1604 <td>table 1605 </td><td>string 1606 </td><td>是 1607 </td><td>要更新的目标表名。 1608 </td></tr> 1609 <tr> 1610 <td>cursor 1611 </td><td>string 1612 </td><td>是 1613 </td><td>用于标记更新的游标。第一次调用时设置cursor=null,第二次调用时,使用上一次调用该接口的返回结果中的cursor。 1614 </td></tr> 1615 <tr> 1616 <td>projection 1617 </td><td>array 1618 </td><td>否 1619 </td><td>指定需要哪些字段,“_key”、“_mtime”、“_ctime”是默认返回的。 1620 </td></tr></tbody></table> 1621 返回参数 1622 <table> 1623 1624 <tbody><tr> 1625 <th scope="col">参数名称 1626 </th><th scope="col">类型 1627 </th><th scope="col">描述 1628 </th></tr> 1629 <tr> 1630 <td>error_code 1631 </td><td>number 1632 </td><td>错误码。如果不出错,则返回值没有该字段。 1633 </td></tr> 1634 <tr> 1635 <td>error_msg 1636 </td><td>string 1637 </td><td>错误提示。如果不出错,则返回值没有该字段。 1638 </td></tr> 1639 <tr> 1640 <td>table 1641 </td><td>string 1642 </td><td>表名。 1643 </td></tr> 1644 <tr> 1645 <td>entries 1646 </td><td>array 1647 </td><td>record 数组。 1648 </td></tr> 1649 <tr> 1650 <td>reset 1651 </td><td>boolean 1652 </td><td>客户端是否需要清空本地所有数据。True:表示服务器通知客户端清理所有本地数据,从头获取一份完整的数据列表。 1653 </td></tr> 1654 <tr> 1655 <td>has_more 1656 </td><td>boolean 1657 </td><td>是否还有更新。 1658 1659 * True:本次调用diff接口结果无法一次返回,立刻再调用一次diff接口获取剩余结果; 1660 * False:已返回全部更新,等待一段时间(5分钟)之后再调用该接口查看是否有更新。 1661 </td></tr> 1662 <tr> 1663 <td>cursor 1664 </td><td>string 1665 </td><td>游标,下次调用diff 接口,需要使用该参数 1666 </td></tr></tbody></table> 1667 1668 说明: 1669 1670 (1)其中records是一个record数组,标志从上次调用该接口以来的更新操作: 1671 1672 1673 * 对于update后的record,会得到一个最新版的record; 1674 * 对于删除的record,得到的record中_isdelete字段为“1”。 1675 1676 1677 (2)常见“reset=true”的场景如下: 1678 1679 1680 * 服务器端程序升级等,提示客户端重新拉去文件列表等。 1681 1682 1683 (3)**注意:** 1684 1685 1686 #### diff接口有一定延迟(约10s),客户端不可假设新增record之后马上就会在diff 接口中获得更新。 1687 1688 示例 1689 1690 请求示例: 1691 1692 当创建了“刘德华”和“凤凰传奇”两个record后,第一次调用diff接口,使用cursor为null作为参数: 1693 1694 <pre style="font-family:monospace;"> 1695 $ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_diff1_request <span style="color: #339933;"><<</span>DELIM 1696 <span style="color: #009900;">{</span> 1697 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1698 <span style="color: #3366CC;">"cursor"</span> <span style="color: #339933;">:</span> <span style="color: #3366CC;">"null"</span><span style="color: #339933;">,</span> 1699 <span style="color: #3366CC;">"projection"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span><span style="color: #3366CC;">"name"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"intro"</span><span style="color: #009900;">]</span> 1700 <span style="color: #009900;">}</span> 1701 DELIM 1702 1703 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 1704 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=diff&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_diff1_request"</span></pre> 1705 1706 返回: 1707 1708 <pre style="font-family:monospace;"><span style="color: #009900;">{</span> 1709 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1710 <span style="color: #3366CC;">"entries"</span><span style="color: #339933;">:</span> 1711 <span style="color: #009900;">[</span> 1712 <span style="color: #009900;">{</span> 1713 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"f44603de003c57d5-1346066442"</span><span style="color: #339933;">,</span> 1714 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"刘德华"</span><span style="color: #339933;">,</span> 1715 <span style="color: #3366CC;">"intro"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"香港著名歌手、演员"</span><span style="color: #339933;">,</span> 1716 <span style="color: #3366CC;">"_ctime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1345786801</span><span style="color: #339933;">,</span> 1717 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1345786801</span><span style="color: #339933;">,</span> 1718 <span style="color: #3366CC;">"_isdelete"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">0</span> 1719 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1720 <span style="color: #009900;">{</span> 1721 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"1aaef0010c012db7-1346066442"</span><span style="color: #339933;">,</span> 1722 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"凤凰传奇"</span><span style="color: #339933;">,</span> 1723 <span style="color: #3366CC;">"intro"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"中国大陆具有广泛知名度的男女二人音乐组合"</span><span style="color: #339933;">,</span> 1724 <span style="color: #3366CC;">"_ctime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1345787059</span><span style="color: #339933;">,</span> 1725 <span style="color: #3366CC;">"_isdelete"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">0</span><span style="color: #339933;">,</span> 1726 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1345787666</span> 1727 <span style="color: #009900;">}</span> 1728 <span style="color: #009900;">]</span><span style="color: #339933;">,</span> 1729 <span style="color: #3366CC;">"cursor"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"3861315431477246513534776b33573367765677314d595a6571724c69753574426133356f4f71316239342b5937577037766874316330493447465a346172445776504e45793235552b456f39796f4c6b307a30447a6f4e68774233616130362f63356f67586d66647879736f72686a70757a575a5342582b4c4b506479325431486f3937526333514a4a6d72626d7830574a35456d46705153454c4873614f6a6368743948743575386b45765477376a634e453848457737522f756d714235464d7a374372574b5777675134423231366a6f3431673d3d"</span><span style="color: #339933;">,</span> 1730 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">4060333081</span> 1731 <span style="color: #009900;">}</span></pre> 1732 1733 此时如果删除了“刘德华”,再调用diff接口,应该使用刚才的cursor作为参数调用diff接口: 1734 1735 <pre style="font-family:monospace;">$ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_diff2_request <span style="color: #339933;"><<</span>DELIM 1736 <span style="color: #009900;">{</span> 1737 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span><span style="color: #3366CC;">"cursor"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"3861315431477246513534776b33573367765677314d595a6571724c69753574426133356f4f71316239342b5937577037766874316330493447465a346172445776504e45793235552b456f39796f4c6b307a30442b6f6b4f585a7672687647426342783858576a524666316470356473754f6a364356674365366f53647979663646356649744747336e50694a44767a7258627a77473078572b327a366c4f674a4c757a76596e3843454b36496b59474153566c4447514c506632704c64494a5a764f337269546d6d454c6869676765367a4866513d3d"</span><span style="color: #339933;">,</span> 1738 <span style="color: #3366CC;">"projection"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> <span style="color: #3366CC;">"name"</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">"id"</span> <span style="color: #009900;">]</span> 1739 <span style="color: #009900;">}</span> 1740 DELIM 1741 1742 curl <span style="color: #339933;">-</span>i <span style="color: #339933;">-</span>X POST 1743 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=diff&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=artists_diff2_request"</span></pre> 1744 1745 得到的响应如下: 1746 1747 <pre style="font-family:monospace;"><span style="color: #009900;">{</span> 1748 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1749 <span style="color: #3366CC;">"entries"</span><span style="color: #339933;">:</span> 1750 <span style="color: #009900;">[</span> 1751 <span style="color: #009900;">{</span> 1752 <span style="color: #3366CC;">"id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">85617</span><span style="color: #339933;">,</span> 1753 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"<span style="color: #000099; font-weight: bold;">\u</span>5218<span style="color: #000099; font-weight: bold;">\u</span>5fb7<span style="color: #000099; font-weight: bold;">\u</span>534e"</span><span style="color: #339933;">,</span> 1754 <span style="color: #3366CC;">"_ctime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1346066442</span><span style="color: #339933;">,</span> 1755 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1346067702</span><span style="color: #339933;">,</span> 1756 <span style="color: #3366CC;">"_isdelete"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 1757 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"f44603de003c57d51346066442"</span> 1758 <span style="color: #009900;">}</span> 1759 <span style="color: #009900;">]</span><span style="color: #339933;">,</span> 1760 <span style="color: #3366CC;">"has_more"</span><span style="color: #339933;">:</span><span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">,</span> 1761 <span style="color: #3366CC;">"reset"</span><span style="color: #339933;">:</span><span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">,</span><span style="color: #3366CC;">"cursor"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"3861315431477246513534776b33573367765677314d595a6571724c69753574426133356f4f71316239342b5937577037766874316330493447465a346172445776504e45793235552b456f39796f4c6b307a304434436368685971496f4e544d446e326a6341505358767251356b79616244597a52745750436d544a327250703956444f7338593752737a4e32735a4d634233372f34416e454e4f3744474c4b4e6d726d64726f774e6b594a4e6553524a716d65743442553375696b354f585738474d376e4f635973507239636c6e5071585141673d3d"</span><span style="color: #339933;">,</span> 1762 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1242060313</span> 1763 <span style="color: #009900;">}</span></pre> 1764 1765 1766 ## 查询record(回收站) 1767 1768 ### 功能 1769 1770 与select相同,只不过操作对象是回收站中。 1771 1772 ### HTTP请求方式 1773 1774 POST 1775 1776 ### URL 1777 1778 https://pcs.baidu.com/rest/2.0/structure/data 1779 1780 ### 说明 1781 1782 该接口参数与select完全一样, 只不过操作对象是回收站中的records;返回的records中_isdelete为“1”。详细信息,请参考“查询record—select”。 1783 1784 1785 1786 ## 从回收站中恢复record 1787 1788 ### 功能 1789 1790 从回收站中恢复文件。 1791 1792 ### HTTP请求方式 1793 1794 POST 1795 1796 ### URL 1797 1798 https://pcs.baidu.com/rest/2.0/structure/data 1799 1800 ### 请求参数 1801 1802 <table> 1803 1804 <tbody><tr> 1805 <th scope="col">参数名称 1806 </th><th scope="col">类型 1807 </th><th scope="col">是否必需 1808 </th><th scope="col">描述 1809 </th></tr> 1810 <tr> 1811 <td>v 1812 </td><td>string 1813 </td><td>否 1814 </td><td>版本号,默认为“1.0”。 1815 </td></tr> 1816 <tr> 1817 <td>method 1818 </td><td>string 1819 </td><td>是 1820 </td><td>固定值:restore。 1821 </td></tr> 1822 <tr> 1823 <td>access_token 1824 </td><td>string 1825 </td><td>是 1826 </td><td>用户的access_token,HTTPS调用时必须使用。 1827 </td></tr> 1828 <tr> 1829 <td>table 1830 </td><td>string 1831 </td><td>是 1832 </td><td>要恢复的目标表名。 1833 </td></tr> 1834 <tr> 1835 <td>records 1836 </td><td>json array 1837 </td><td>是 1838 </td><td>需要恢复的record _key数组。 1839 </td></tr></tbody></table> 1840 1841 说明: 1842 1843 #### 其中records是一个数组,每个数组成员结构如下: 1844 1845 <table> 1846 1847 <tbody><tr> 1848 <th scope="col">名称 1849 </th><th scope="col">类型 1850 </th><th scope="col">是否必需 1851 </th><th scope="col">描述 1852 </th></tr> 1853 <tr> 1854 <td>_key 1855 </td><td>string 1856 </td><td>是 1857 </td><td>需要恢复的record _key字段的值。 1858 </td></tr></tbody></table> 1859 1860 返回参数 1861 <table> 1862 1863 <tbody><tr> 1864 <th scope="col">参数名称 1865 </th><th scope="col">类型 1866 </th><th scope="col">描述 1867 </th></tr> 1868 <tr> 1869 <td>error_code 1870 </td><td>number 1871 </td><td>错误码。如果不出错,则返回值没有该字段 1872 </td></tr> 1873 <tr> 1874 <td>error_msg 1875 </td><td>string 1876 </td><td>错误提示。如果不出错,则返回值没有该字段 1877 </td></tr> 1878 <tr> 1879 <td>records 1880 </td><td>json array 1881 </td><td>返回服务器端已经处理的records(_key,_mtime)列表,顺序与输入顺序一致,如果一个请求包含多个record,遇到第一个出错record即中止,返回的records只包含已经处理成功的key。 1882 </td></tr></tbody></table> 1883 1884 ### 示例 1885 1886 请求示例: <pre style="font-family:monospace;">$ cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_restore_request <span style="color: #339933;"><<</span>DELIM 1887 <span style="color: #009900;">{</span> 1888 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 1889 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1890 <span style="color: #009900;">{</span><span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"7d4febca4a68e763-1344915172"</span><span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1891 <span style="color: #009900;">{</span><span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"385d24b3baef3290-1344915172"</span><span style="color: #009900;">}</span> 1892 <span style="color: #009900;">]</span> 1893 <span style="color: #009900;">}</span> 1894 DELIM 1895 1896 $ curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST 1897 <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=restore&access_token=2.b06c3e00010fdb879d12345dcd5f8545.2587600.134819999.1175746697-238347"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_restore_request"</span> 1898 </pre> 1899 正确响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">200</span> OK 1900 <span style="color: #009900;">{</span> 1901 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1902 <span style="color: #009900;">{</span> 1903 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"7d4febca4a68e763-1344915172"</span><span style="color: #339933;">,</span> 1904 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1344927006</span> 1905 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1906 <span style="color: #009900;">{</span> 1907 <span style="color: #3366CC;">"_key"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"385d24b3baef3290-1344915172"</span><span style="color: #339933;">,</span> 1908 <span style="color: #3366CC;">"_mtime"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">1344927006</span> 1909 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1910 1911 <span style="color: #009900;">]</span> 1912 <span style="color: #009900;">}</span></pre> 1913 出错响应示例:<pre style="font-family:monospace;">HTTP<span style="color: #339933;">/</span><span style="color: #CC0000;">1.1</span> <span style="color: #CC0000;">400</span> Bad Request 1914 <span style="color: #009900;">{</span> 1915 <span style="color: #3366CC;">"error_code"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">31430</span><span style="color: #339933;">,</span> 1916 <span style="color: #3366CC;">"error_msg"</span><span style="color: #339933;">:</span><span style="color: #3366CC;">"key not exist"</span><span style="color: #339933;">,</span> 1917 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span><span style="color: #CC0000;">0</span> 1918 <span style="color: #3366CC;">"records"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 1919 <span style="color: #009900;">{</span><span style="color: #3366CC;">'_key'</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"7d4febca4a68e763-1344915172"</span><span style="color: #009900;">}</span><span style="color: #339933;">,</span> 1920 <span style="color: #009900;">]</span> 1921 <span style="color: #009900;">}</span></pre> 1922 1923 1924 1925 ## 按条件更新record 1926 1927 ### 功能 1928 1929 对符合一定条件的record 执行更新操作。 1930 1931 ### HTTP请求方式 1932 1933 POST 1934 1935 ### URL 1936 1937 https://pcs.baidu.com/rest/2.0/structure/data 1938 1939 ### 请求参数 1940 1941 <table> 1942 1943 <tbody><tr> 1944 <th scope="col">参数名称 1945 </th><th scope="col">类型 1946 </th><th scope="col">是否 1947 1948 必需 1949 1950 </th><th scope="col">描述 1951 </th></tr> 1952 <tr> 1953 <td>v 1954 </td><td>string 1955 </td><td>否 1956 </td><td>版本号,默认为“1.0” 1957 </td></tr> 1958 <tr> 1959 <td>method 1960 </td><td>string 1961 </td><td>是 1962 </td><td>固定值:update 1963 </td></tr> 1964 <tr> 1965 <td>type 1966 </td><td>string 1967 </td><td>是 1968 </td><td>固定值:by-condition。 1969 </td></tr> 1970 <tr> 1971 <td>access_token 1972 </td><td>string 1973 </td><td>是 1974 </td><td>用户的access_token,HTTPS调用时必须使用。 1975 </td></tr> 1976 <tr> 1977 <td>table 1978 </td><td>string 1979 </td><td>是 1980 </td><td>查询的目标表名。 1981 </td></tr> 1982 <tr> 1983 <td>condition 1984 </td><td>json 1985 </td><td>是 1986 </td><td>条件描述, 与select 中的condition一样。 1987 </td></tr> 1988 <tr> 1989 <td>action 1990 </td><td>json 1991 </td><td>是 1992 </td><td>需要对命中的record进行的操作。 1993 </td></tr></tbody></table> 1994 1995 #### 说明: 1996 1997 ##### action为一个json字典,其格式为: 1998 1999 "action": { 2000 column: {action: value} 2001 } 2002 2003 ##### 如: 2004 2005 "action": { 2006 "name": {"=": "LiuDeHua"} 2007 } 2008 2009 #### 其中column 支持嵌套列。 2010 2011 * 所支持的action如下表所示: 2012 2013 2014 <table> 2015 2016 <tbody><tr> 2017 <th scope="col">action 2018 </th><th scope="col">类型 2019 </th><th scope="col">描述 2020 </th><th scope="col">示例 2021 </th></tr> 2022 <tr> 2023 <td>'=' 2024 </td><td>number/string 2025 </td><td>表示将目标列设置为value。 2026 </td><td>"name": {"=": "LiuDeHua"}, 2027 </td></tr> 2028 <tr> 2029 <td>'+=' 2030 </td><td>number 2031 </td><td>表示将目标列的值增加value,如果该列不存在,默认值为0。 2032 </td><td>"age": {"+=":1}, 2033 </td></tr> 2034 <tr> 2035 <td>'-=' 2036 </td><td>number 2037 </td><td>表示将目标列的值减少value,如果该列不存在,默认值为0。 2038 </td><td>"age": {"-=":1}, 2039 </td></tr></tbody></table> 2040 2041 返回参数 (JSON格式) 2042 <table> 2043 2044 <tbody><tr> 2045 <th scope="col">参数名称 2046 </th><th scope="col">类型 2047 </th><th scope="col">描述 2048 </th></tr> 2049 <tr> 2050 <td>error_code 2051 </td><td>number 2052 </td><td>错误码,如果不出错,则返回值没有该字段。 2053 </td></tr> 2054 <tr> 2055 <td>error_msg 2056 </td><td>string 2057 </td><td>错误提示,如果不出错,则返回值没有该字段。 2058 </td></tr> 2059 <tr> 2060 <td>request_id 2061 </td><td>number 2062 </td><td>请求唯一标识ID。 2063 </td></tr> 2064 <tr> 2065 <td>affected 2066 </td><td>number 2067 </td><td>返回受影响的行数。 2068 </td></tr></tbody></table> 2069 2070 ### 示例 2071 2072 请求示例: <pre style="font-family:monospace;">cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_update_request <span style="color: #339933;"><<</span>DELIM 2073 <span style="color: #009900;">{</span> 2074 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 2075 <span style="color: #3366CC;">"condition"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 2076 <span style="color: #3366CC;">"and"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 2077 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"刘德华"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> 2078 <span style="color: #009900;">]</span> 2079 <span style="color: #009900;">}</span><span style="color: #339933;">,</span> 2080 <span style="color: #3366CC;">"action"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 2081 <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span><span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"LiuDeHua"</span><span style="color: #009900;">}</span><span style="color: #339933;">,</span> 2082 <span style="color: #3366CC;">"age"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"+="</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span> <span style="color: #009900;">}</span> 2083 <span style="color: #009900;">}</span> 2084 <span style="color: #009900;">}</span> 2085 DELIM 2086 2087 curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=update&type=by-condition&access_token=2.85e37d20acd37c3a5ebc9726bd5606eb.31536000.1384932826.1175746697-309847"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_update_request"</span></pre> 2088 响应示例:<pre style="font-family:monospace;"><span style="color: #009900;">{</span> 2089 <span style="color: #3366CC;">"affected"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 2090 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">4060311005</span> 2091 <span style="color: #009900;">}</span></pre> 2092 2093 2094 2095 ## 按条件删除record 2096 2097 ### 功能 2098 2099 对符合一定条件的record 执行删除操作。 2100 2101 ### HTTP请求方式 2102 2103 POST 2104 2105 ### URL 2106 2107 https://pcs.baidu.com/rest/2.0/structure/data 2108 2109 ### 请求参数 2110 2111 <table> 2112 2113 <tbody><tr> 2114 <th scope="col">参数名称 2115 </th><th scope="col">类型 2116 </th><th scope="col">是否 2117 2118 必需 2119 2120 </th><th scope="col">描述 2121 </th></tr> 2122 <tr> 2123 <td>v 2124 </td><td>string 2125 </td><td>否 2126 </td><td>版本号,默认为“1.0”。 2127 </td></tr> 2128 <tr> 2129 <td>method 2130 </td><td>string 2131 </td><td>是 2132 </td><td>固定值:delete。 2133 </td></tr> 2134 <tr> 2135 <td>type 2136 </td><td>string 2137 </td><td>是 2138 </td><td>固定值:by-condition。 2139 </td></tr> 2140 <tr> 2141 <td>access_token 2142 </td><td>string 2143 </td><td>是 2144 </td><td>用户的access_token,HTTPS调用时必须使用。 2145 </td></tr> 2146 <tr> 2147 <td>table 2148 </td><td>string 2149 </td><td>是 2150 </td><td>查询的目标表名。 2151 </td></tr> 2152 <tr> 2153 <td>condition 2154 </td><td>json 2155 </td><td>是 2156 </td><td>条件描述,与select 中的condition一样。 2157 </td></tr></tbody></table> 2158 2159 返回参数 (JSON格式) 2160 <table> 2161 2162 <tbody><tr> 2163 <th scope="col">参数名称 2164 </th><th scope="col">类型 2165 </th><th scope="col">描述 2166 </th></tr> 2167 <tr> 2168 <td>error_code 2169 </td><td>number 2170 </td><td>错误码,如果不出错,则返回值没有该字段。 2171 </td></tr> 2172 <tr> 2173 <td>error_msg 2174 </td><td>string 2175 </td><td>错误提示,如果不出错,则返回值没有该字段。 2176 </td></tr> 2177 <tr> 2178 <td>request_id 2179 </td><td>number 2180 </td><td>请求唯一标识ID。 2181 </td></tr> 2182 <tr> 2183 <td>affected 2184 </td><td>number 2185 </td><td>返回受影响的行数。 2186 </td></tr></tbody></table> 2187 2188 ### 示例 2189 2190 请求示例: <pre style="font-family:monospace;"> cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_update_request <span style="color: #339933;"><<</span>DELIM 2191 <span style="color: #009900;">{</span> 2192 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 2193 <span style="color: #3366CC;">"condition"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 2194 <span style="color: #3366CC;">"and"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 2195 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"LiuDeHua"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> 2196 <span style="color: #009900;">]</span> 2197 <span style="color: #009900;">}</span> 2198 <span style="color: #009900;">}</span> 2199 DELIM 2200 2201 curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=delete&type=by-condition&access_token=2.85e37d20acd37c3a5ebc9726bd5606eb.31536000.1384932826.1175746697-309847"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_update_request"</span> </pre> 2202 响应示例:<pre style="font-family:monospace;"><span style="color: #009900;">{</span> 2203 <span style="color: #3366CC;">"affected"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 2204 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">4060311005</span> 2205 <span style="color: #009900;">}</span></pre> 2206 2207 2208 2209 ## 按条件恢复record 2210 2211 ### 功能 2212 2213 对回收站中符合一定条件的record 执行restore操作。 2214 2215 ### HTTP请求方式 2216 2217 POST 2218 2219 ### URL 2220 2221 https://pcs.baidu.com/rest/2.0/structure/data 2222 2223 ### 请求参数 2224 2225 <table> 2226 2227 <tbody><tr> 2228 <th scope="col">参数名称 2229 </th><th scope="col">类型 2230 </th><th scope="col">是否 2231 2232 必需 2233 2234 </th><th scope="col">描述 2235 </th></tr> 2236 <tr> 2237 <td>v 2238 </td><td>string 2239 </td><td>否 2240 </td><td>版本号,默认为“1.0”。 2241 </td></tr> 2242 <tr> 2243 <td>method 2244 </td><td>string 2245 </td><td>是 2246 </td><td>固定值:restore。 2247 </td></tr> 2248 <tr> 2249 <td>type 2250 </td><td>string 2251 </td><td>是 2252 </td><td>固定值:by-condition。 2253 </td></tr> 2254 <tr> 2255 <td>access_token 2256 </td><td>string 2257 </td><td>是 2258 </td><td>用户的access_token,HTTPS调用时必须使用。 2259 </td></tr> 2260 <tr> 2261 <td>table 2262 </td><td>string 2263 </td><td>是 2264 </td><td>查询的目标表名。 2265 </td></tr> 2266 <tr> 2267 <td>condition 2268 </td><td>json 2269 </td><td>是 2270 </td><td>条件描述, 与select 中的condition一样。 2271 </td></tr></tbody></table> 2272 2273 返回参数 (JSON格式) 2274 <table> 2275 2276 <tbody><tr> 2277 <th scope="col">参数名称 2278 </th><th scope="col">类型 2279 </th><th scope="col">描述 2280 </th></tr> 2281 <tr> 2282 <td>error_code 2283 </td><td>number 2284 </td><td>错误码,如果不出错,则返回值没有该字段。 2285 </td></tr> 2286 <tr> 2287 <td>error_msg 2288 </td><td>string 2289 </td><td>错误提示,如果不出错,则返回值没有该字段。 2290 </td></tr> 2291 <tr> 2292 <td>request_id 2293 </td><td>number 2294 </td><td>请求唯一标识ID。 2295 </td></tr> 2296 <tr> 2297 <td>affected 2298 </td><td>number 2299 </td><td>返回受影响的行数。 2300 </td></tr></tbody></table> 2301 2302 ### 示例 2303 2304 请求示例: <pre style="font-family:monospace;">cat <span style="color: #339933;">></span> .<span style="color: #339933;">/</span>artists_update_request <span style="color: #339933;"><<</span>DELIM 2305 <span style="color: #009900;">{</span> 2306 <span style="color: #3366CC;">"table"</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"artists"</span><span style="color: #339933;">,</span> 2307 <span style="color: #3366CC;">"condition"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> 2308 <span style="color: #3366CC;">"and"</span><span style="color: #339933;">:</span> <span style="color: #009900;">[</span> 2309 <span style="color: #009900;">{</span> <span style="color: #3366CC;">"name"</span><span style="color: #339933;">:</span> <span style="color: #009900;">{</span> <span style="color: #3366CC;">"="</span><span style="color: #339933;">:</span> <span style="color: #3366CC;">"LiuDeHua"</span> <span style="color: #009900;">}</span> <span style="color: #009900;">}</span> 2310 <span style="color: #009900;">]</span> 2311 <span style="color: #009900;">}</span> 2312 <span style="color: #009900;">}</span> 2313 DELIM 2314 curl <span style="color: #339933;">-</span>v <span style="color: #339933;">-</span>X POST <span style="color: #3366CC;">"http://pcs.baidu.com/rest/2.0/structure/data?method=restore&type=by-condition&access_token=2.85e37d20acd37c3a5ebc9726bd5606eb.31536000.1384932826.1175746697-309847"</span> <span style="color: #339933;">-</span>F <span style="color: #3366CC;">"param=<artists_update_request"</span></pre> 2315 响应示例:<pre style="font-family:monospace;"><span style="color: #009900;">{</span> 2316 <span style="color: #3366CC;">"affected"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">1</span><span style="color: #339933;">,</span> 2317 <span style="color: #3366CC;">"request_id"</span><span style="color: #339933;">:</span> <span style="color: #CC0000;">4060311005</span> 2318 <span style="color: #009900;">}</span></pre>