我的Datasnap服务器中有两种方法。第一个接受JsonObject
。
function TServerMethods1.UpdateImagem(JsonObj: TJSONObject): Boolean;
要将数据发送到UpdateImagem
,我用邮递员制作了POST
,然后发送了raw
。
{
"nome":"soon",
"tipofoto":"foto"
}
JsonObj
成功进入datasnap服务器,我可以获得JsonObj.GetValue('nome')
和JsonObj.GetValue('tipofoto').Value
。
第二种方法不是接收JsonObj
,而是接收4个值。
function TServerMethods1.UpdateFile(const AArquivo, Pasta: String; Size: Int64;
const ASetStream: TStream): boolean;
我无法将数据发送到此方法。 (目前,我忽略了ASetStream的值,因为我什至无法发送其他值。)
1º尝试--我尝试以JSON格式发送。
{
"AArquivo":"soon",
"Pasta":"foto",
"Size":"0"
}
这会向我返回错误:Cannot convert JSON value {"AArquivo"...} input into TDBXTypes.WideString
。
2º尝试--我尝试将其发送为form-data
和form-urlencoded
,但我都给出了相同的错误:Message content is not a valid JSON value
。
有什么方法可以发送这些值?
糟糕:我不能更改服务器方法,因为我不是在服务器上工作的人。
答案 0 :(得分:0)
您的JSON数据实际上是无效的。
{
"AArquivo":"soon",
"Pasta":"foto"
"Size":"0"
}
缺少逗号...
{
"AArquivo":"soon",
"Pasta":"foto",
"Size":"0"
}