[PB] PartkeyGetRecord2.0
Supported version: 3.50.0
Brief Introduction
This interface can be used to get related records according to the primary key index, which is defined in the table definition proto file. Primary key index is an index designed based on primary key fields. The interface also supports filtering field return, and specifies the field name to be returned through the Select parameter; It can also control the number of records returned, which is specified by the parameter Limit.
POST http://{Tcaplus_REST_URL}
Request Syntax
Http Request
#Tencent Cloud Console RESTful Endpoint, ip: 80, port: 80 by default
http://172.17.0.22
#TcaplusDB Local docker RESTful Endpoint, ip: 31001, port: 31001 by default
http://9.135.8.93:31001
Http Request Head Parameter
| Name | Required or not | Limitations | Description |
|---|---|---|---|
| x-tcaplus-target | Yes | None | Tcaplus.GetRecordByPartKey |
| x-tcaplus-version | Yes | None | Tcaplus3.50.0 |
| x-tcaplus-app-id | Yes | None | Correspond to the app id number(aka, cluster access id) |
| x-tcaplus-zone-id | Yes | None | Correspond to the zone number (aka, table group id) |
| x-tcaplus-protocol-version | Yes | None | Correspond to the protocol version number, default 2.0 |
| x-tcaplus-table-name | Yes | None | Correspond to the table name |
| x-tcaplus-pwd-md5 | Yes | None | App password (aka, cluster access password), that is, the md5 value after the calculation |
| x-tcaplus-idl-type | Yes | None | protobuf |
| x-tcaplus-result-flag | No | None | 0: No data will be returned after successful operation; 1: After the operation is successful, the data that is consistent with the request will be returned; 2: After the operation is successful, the data after this update operation will be returned; 3: After the operation is successful, the data before the tcapsvr operation will be returned |
| x-tcaplus-data-version-check | No | 1: Detect the record version number. Only when the version number is the same as the server version number, the version number will automatically increase; 2: Do not detect the record version number, but force the client record version number to be written to the server; 3: Do not detect the record version number, and automatically increase the server version number | |
| x-tcaplus-data-version | No | Version number |
Example:
x-tcaplus-target:Tcaplus.GetRecordByPartKey
x-tcaplus-app-id:3
x-tcaplus-zone-id:1
x-tcaplus-protocol-version:2.0
x-tcaplus-table-name:game_players
x-tcaplus-pwd-md5:4e81984efccfb4982333aeb1ff7968d5
x-tcaplus-result-flag:2
x-tcaplus-version:Tcaplus3.50.0
x-tcaplus-data-version-check: 3
x-tcaplus-idl-type:protobuf
Data
Use json format to represent the record related information. Parameter description:
- Select: Optional. It filters the returned fields and specifies the field name. It cannot be the primary key field name.
- Limit: Optional. It limits the number of records returned per request
- Offset: Optional. query record starting number
- Record: Required. It specifies the primary key index field
Example:
{
"Limit": 1,
"Record": {
"player_id": 5,
"player_name": "5"
},
"Select": ["game_server_id", "is_online", "pay"]
}
Complete Request Example
curl -i -XPOST -H 'x-tcaplus-target: Tcaplus.GetRecordByPartKey' -H 'x-tcaplus-app-id: 70' -H 'x-tcaplus-zone-id: 1' -H 'x-tcaplus-protocol-version: 2.0' -H 'x-tcaplus-table-name: game_players' -H 'x-tcaplus-pwd-md5: 0972ad76decf4d11a69e2e0d9af335da' -H 'x-tcaplus-result-flag: 2' -H 'x-tcaplus-version: Tcaplus3.50.0' -H 'x-tcaplus-data-version-check: 3' -H 'x-tcaplus-idl-type: protobuf' http://172.17.32.17 -d '{
"Record": {
"player_id":5,
"player_name":"5"
},
"Select":["game_server_id", "is_online", "pay"]
}'
Return Syntax
Return Parameter Description
| Parameter name | Description |
|---|---|
| ErrorCode | Return code |
| ErrorMsg | Return message |
| RecordVersion | Record version number |
| MultiRecords | Data arrays returned of successful records in json format. The array elements are Record record data |
| TotalNum | The total number of records corresponding to the local index |
Return Example
Successful Return Example
{
"ErrorCode": 0,
"ErrorMsg": "Succeed",
"MultiRecords": [{
"RecordVersion": 1,
"Record": {
"game_server_id": 55,
"is_online": false,
"pay": {
"pay_id": 55,
"amount": 55,
"method": 55
},
"player_email": "55",
"player_id": 5,
"player_name": "5"
}
}, {
"RecordVersion": 1,
"Record": {
"game_server_id": 5,
"is_online": false,
"pay": {
"pay_id": 5,
"amount": 5,
"method": 5
},
"player_email": "5",
"player_id": 5,
"player_name": "5"
}
}],
"TotalNum": 2
}
Failed Return Example
{
"ErrorCode": 261,
"ErrorMsg": "Record does not exist"
}
Error code
Refer to Common Error Codes
Other Reference Documents
[[PB Generic Table][C++ SDK] Interface Description for Querying Local Index](../../01C++_SDK/02Interface_Documents/06[Generic_Table]Query_Local_Index.md
[PB Generic Table] [Go SDK] Interface Description for Querying Local Index.