Hallo!
, " ", , — )
Wahrscheinlich haben viele von uns REST-APIs erstellt oder die fertigen von jemand anderem verwendet. Werfen wir einen Blick auf die "unglaublichen" Tricks, mit denen Sie Ihre API von den anderen abheben können.
weißer Gürtel
Alle Werte in json sind Zeichenfolgen und nicht anders!
Nehmen wir das einfachste Objekt:
{
"stringValue" : "value",
"intValue": 123
}
Deshalb ist 123 hier, um eine Zahl zu setzen, warum solche Verwirrung? Lassen Sie es eine Zeichenfolge sein, der Deserializer wird es herausfinden:
{
"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. ...
Wenn es Ihnen so vorkam, als würde der Autor übertreiben und erfinden, dann ... Der Autor möchte, dass es so ist. Ich musste mich jedoch mit jedem dieser Fälle befassen. Lasst uns einander respektieren und Gutes tun und keinen Unsinn) Vielen Dank für Ihre Aufmerksamkeit, ich hoffe, dass es an einigen Stellen nicht nur traurig war, sondern auch Spaß machte!