Olá!
, " ", , — )
Provavelmente muitos de nós criaram APIs REST ou usaram as já prontas de outra pessoa. Vamos dar uma olhada nos truques "incríveis" que o ajudarão a tornar sua API um ponto acima das outras.
cinto branco
Todos os valores em json são string e não de outra forma!
Bem, vamos pegar o objeto mais simples:
{
"stringValue" : "value",
"intValue": 123
}
É por isso que 123 está aqui para definir um número, por que tanta confusão? Que seja uma string, o desserializador descobrirá:
{
"stringValue" : "value",
"intValue": "123"
}
, ? … ?
{
"stringValue" : "value",
"intValue": "123",
"complexValue": {
"key": "value"
}
}
… ! -:
{
"stringValue" : "value",
"intValue": "123",
"complexValue": "{
\"key\": \"value\"
}"
}
? ? , ? , !
{
"stringValue" : "value",
"intValue": "123",
"complexValue": "{
\"key\": \"value\",
\"anotherComplexValue\": {
\"superKey\": \"megaValue\"
}
}"
}
, ! ! !… ? ? , , . complexValue ? , , , , .
"Key": Value — , ...
2-3 , ? :
[
25000,
"",
{
"key1": "value1",
"key2": "value2"
}
]
! ? ! ? . , !
[
25000,
"",
"{
\"key1\": \"value1\",
\"key2\": \"value2\"
}"
]
! ! , , 5 :
[
25000,
"",
[
"value1",
"value2"
]
]
! json , !
: — , ?
[
"",
"[
\"value1\",
\"value2\"
]",
"25000"
]
? 3- ? , , , . ? 25000, , . ? ? — , !
. …
- . , , . :
{
"queryType": "select",
"table": "lyudi",
"where": "name = AND zarplata > 15000"
}
! ! ? , , )
, ?
, !
… ! :
{
"query": "select * from lyudi where name = AND zarplata > 15000"
}
! ? ? ? , . ORM? ? -. MSSQL .
""! -
: API ? : ! ! rest' . : , ! !
, , , "", , , , )
, api vpn , : .
- , ! -!
JSON
. , ! , - :
{}
:
{
"key1": "value1",
"key2": 2
}
:
{
"key1": "value1",
"key2": 2,
"key3": {
"123": 456
}
}
, :
{
"objectAsArray": ["Vasya", 123, 456, "Piter"]
}
! !
! JSON : VARCHAR(MAX). !
!
dbf, ? !
{
"data": "Vasya 123 456 Piter "
}
10 , 5 , 5 , 20 . , ! , , !
!
— ? , , !
{
"data": [56, 61, 73, 79, 61, 20, 20, 20, 20, 20, 31, 32, 33, 20, 20, 34, 35, 36, 20, 20, 50, 69, 74, 65, 72, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]
}
! :
{
"data": "[56, 61, 73, 79, 61, 20, 20, 20, 20, 20, 31, 32, 33, 20, 20, 34, 35, 36, 20, 20, 50, 69, 74, 65, 72, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20]"
}
, !
P.S. "" P.S. ...
Se te pareceu que o autor exagera e inventa, então ... O autor gostaria que assim fosse. No entanto, tive que lidar com cada um desses casos. Vamos nos respeitar e fazer o bem, e não um disparate) Obrigado pela atenção, espero que em alguns lugares não tenha sido só triste, mas também divertido!