如何使用Postman将多个值发送到Datasnap服务器

时间:2019-03-12 21:42:47

标签: delphi datasnap

我的Datasnap服务器中有两种方法。第一个接受JsonObject

1º方法-可行

function TServerMethods1.UpdateImagem(JsonObj: TJSONObject): Boolean;

要将数据发送到UpdateImagem,我用邮递员制作了POST,然后发送了raw

{
    "nome":"soon",
    "tipofoto":"foto"
}

JsonObj成功进入datasnap服务器,我可以获得JsonObj.GetValue('nome')JsonObj.GetValue('tipofoto').Value

2º方法-不起作用

第二种方法不是接收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-dataform-urlencoded,但我都给出了相同的错误:Message content is not a valid JSON value

有什么方法可以发送这些值?

糟糕:我不能更改服务器方法,因为我不是在服务器上工作的人。

1 个答案:

答案 0 :(得分:0)

您的JSON数据实际上是无效的。

{
    "AArquivo":"soon",
    "Pasta":"foto"
    "Size":"0"
}

缺少逗号...

{
    "AArquivo":"soon",
    "Pasta":"foto",
    "Size":"0"
}