salut!
, " ", , — )
Probablement, beaucoup d'entre nous ont créé des API REST ou utilisé le prêt-à-l'emploi de quelqu'un d'autre. Jetons un coup d'œil aux astuces "incroyables" qui vous aideront à faire de votre API un cran au-dessus des autres.
ceinture blanche
Toutes les valeurs de json sont des chaînes et pas autrement!
Eh bien, prenons l'objet le plus simple:
{
"stringValue" : "value",
"intValue": 123
}
C'est pourquoi 123 est là pour définir un nombre, pourquoi une telle confusion? Que ce soit une chaîne, le désérialiseur le comprendra:
{
"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. ...
S'il vous semblait que l'auteur exagère et invente, alors ... L'auteur aimerait qu'il en soit ainsi. Cependant, j'ai dû traiter chacun de ces cas. Respectons-nous et faisons du bien, et pas des bêtises) Merci pour votre attention, j'espère que dans certains endroits, ce n'était pas seulement triste, mais aussi amusant!