全体的にNSJSONSerializationの使い方がわかったと思います。私がかけている電話は次のとおりです。
[NSJSONSerialization dataWithJSONObject:parameters options:0 error:&error]
ここで、parametersは、JSONリクエストで使用するキーと値を含むNSDictionaryです。空の文字列の代わりにnullを値として使用する必要があるまでは、すべて問題ありません。値をnullに設定する方法がまったく見つかりません。私が作成する必要があるjsonの例は次のとおりです。
{"target"
{"firstname":<firstname>,
"lastname":<lastname>},
"error":null
}
サーバーのセットアップ方法は、文字列としてのエラー、またはエラーがない場合はnullのいずれかを予期することです。
何か案は? API呼び出しなどがありませんか?
ありがとう!
NSNull
を使用する必要があります。例えば
スイフト
let dict = ["firstKeyHasValue": 2342, "secondKeyHasNoValue": NSNull()]
Objective-C
NSDictionary *dict = @{ @"error": [NSNull null] };
NSDictionary の公式ドキュメントから:
キーも値もnilにすることはできません。辞書でNULL値を表す必要がある場合は、NSNullを使用する必要があります。
私はこれをやってみて、私のために働きました。
var param:[String:Any] = [:]
param ["firstName"] = "somename"
param ["middleName"] = NSNull()
param ["lastName"] = "somename"
print(param)
結果: ["firstName": "somename"、 "middleName":null、 "lastName": "somename"]