如何发送/接收JSON?

时间:2013-05-23 08:41:38

标签: json delphi

一个愚蠢的问题,我知道。但我通常不会进行Web编程,并且被要求发送一些JSON数据并收到一些作为回报。

我用谷歌搜索并且很清楚如何对JSON数据进行编码和解码,但是我对此很新,我不知道如何与给定的URL进行通信并说“这里有一些数据,请给我一些回复”

有人能指出一个简单的工作代码示例吗?例如,只是将user_name和密码作为JSON传递并接收一些回复......我想我应该使用TIdHTTP,但我不确定如何将它与JSON一起使用。我有一个GET和一个POST界面。

+1给@DavidHeffernan,但我不明白谁将我的请求传递打包的JSON数据或从响应中检索它。 En / de-code很好,但添加它作为参数让我陷入困境。

我真的很感激(链接到)小而完整的工作示例。

是的,我只有XE2入门版,所以我没有datasnap。

1 个答案:

答案 0 :(得分:2)

对于通过HTTP的JSON进程,请查看以下S / O问题: https://stackoverflow.com/a/15948106/458259

如果您的问题是如何在Delphi中使用远程RESTful服务,您将找到答案。

但是如果你想使用JSON和HTTP在Delphi应用程序之间进行通信,最简单的方法就是在Delphi中实现RESTful Client-Server连接。

对于使用JSON和RESTful的客户端 - 服务器传输,请查看我们的开源Synopse mORMot framework。它将为您完成所有JSON序列化和RESTful路由。

它具有客户端 - 服务器ORM(可能不是您需要的)。

但也是一个使用两种模式的SOA框架:

您可以选择任一模式以通过HTTP使用JSON通信。

请注意, mORMot预计可以与Delphi XE2入门版一起使用,因为它不使用任何"高级" Pro / Entreprise / Architect版本的功能,如DB.pas或DataSnap。它允许您访问数据库,即使使用入门版本也是如此。如果由于Starter中缺少某些内容而导致出现问题,请随时在我们的论坛上报告此问题。