Delphi REST API 帖子示例

2024-04-08

有人可以发布一个使用 Delphi 2005 向 API 发送 JSON POST 请求的简单示例。我发现了许多使用 GET 的示例,但 API 提供程序不允许通过 HTTP GET 请求,也不支持 URL 编码参数。

我对调用 REST 服务是全新的(过去使用过 SOAP),因此如果您需要更多信息,请告诉我。


你只需要使用 Indy 的TIdHTTP组件并调用Post方法。将 URL 作为第一个参数传递,将 JSON 字符串作为第二个参数传递。像这样的东西:

procedure TForm1.Button1Click(Sender: TObject);
var
  jsonToSend: TStringList;
  http: TIdHTTP;
begin
  http := TIdHTTP.Create(nil);
  try
    http.HandleRedirects := True;
    http.ReadTimeout := 5000;
    jsonToSend := TStringList.create;
    try
      jsonToSend.Add('{ Your JSON-encoded request goes here }');
      http.Post('http://your.restapi.url', jsonToSend);
    finally
      jsonToSend.Destroy;
    end;
  finally
    http.Destroy;
  end;
end;

我假设您已经能够对 JSON 进行编码和解码,并且您只是询问如何使用 Delphi 执行 HTTP post。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Delphi REST API 帖子示例 的相关文章

  • 如何追踪“地址 00000000”的访问违规

    我知道如何创建 map 文件来在错误消息包含实际地址时跟踪访问冲突错误 但是如果错误消息说怎么办 Access violation at address 00000000 Read of address 00000000 我从哪里开始寻找这
  • 捕获动态表中 HTML 元素的值

    我有从数据库生成的以下动态表
  • 使用 PRAW 帮助获取 Reddit 帖子链接到的 URL

    我正在尝试使用 Praw 获取 Reddit 提交标题中链接的帖子 例如提交 http www reddit com r AdviceAnimals comments 1adu71 apparently people still need
  • DELPHI 和 WANT 或 NANT

    We use 巡航控制 net http confluence public thoughtworks org display CCNET Welcome to CruiseControl NET在 Delphi 2006 应用程序中进行持
  • Yammer API 限制

    Yammer Rest api 文档表示 每个应用程序每个用户在 10 秒内最多可以发出 10 个请求 问题 什么是user这里 是为当前经过身份验证的 yammer 用户发出请求的 IP 地址还是承载令牌 如果我们所有的用户都使用相同的外
  • TColorProperty德尔福柏林10.1.2?

    我正在尝试将组件从 Delphi 7 转换为 Delphi Berlin 平面组件 https sourceforge net projects flatstyle https sourceforge net projects flatst
  • Spring RESTful控制器方法改进建议

    我是 Spring REST 和 Hibernate 的新手 也就是说 我尝试组合一个企业级控制器方法 我计划将其用作未来开发的模式 您认为可以通过哪些方法来改进 我确信有很多 RequestMapping value user metho
  • 如何使用 Gmail 的 SMTP 和 Indy 10 发送电子邮件?

    我正在使用 Delphi 2009 和 svn 中最新的 Indy 10 通过 SMTP 发送电子邮件 但它不适用于 Gmail Google Apps 托管域 当我尝试发送电子邮件时 我收到 必须首先发出 STARTTLS 命令 我尝试用
  • 如何绕过 ASP.NET Web API 中发现多个操作的异常

    当试图找到以下问题的解决方案时 默认操作的 MVC Web Api 路由不起作用 https stackoverflow com questions 11724749 mvc web api route with default actio
  • Rails、REST 架构和 HTML 5:带有预检请求的跨域请求

    在致力于使我们的网站 HTML 5 友好的项目时 我们渴望采用跨域请求的新方法 不再通过隐藏的 iframe 发布 使用访问控制 http www w3 org TR access control 根据规范 我们开始设置一些测试来验证各种浏
  • Delphi 2010 - 从 XML 文档解码 Base64 编码图像

    我正在尝试从应用程序中的 XML 文档解码 base64 编码的 EMF 图像并将其呈现在屏幕上 但是 它似乎从未出现 如果我将 XML 文档中的数据复制 粘贴到 Notepad 中并使用Base64 Decode选项并将文件另存为 emf
  • 如何使用 FieldDefs 在运行时创建新的 SQLite 文件和表?

    我正在使用 Delphi Seattle 在全新的 SQLite 文件中创建一个全新的表 并且仅使用 FieldDefs 和非可视代码 我可以使用 ExecSQL CREATE TABLE 语法创建一个表 但不能如下所示 我得到 没有这样的
  • 打印 TDBGrid [重复]

    这个问题在这里已经有答案了 如何在不安装或下载组件的情况下打印 DBGrid OR 如何将 DBGrid 的数据放入 RichEdit 以便我可以从那里打印它 数据感知控件从 DataSource 属性获取数据 并使用它 不过 您必须手动遍
  • 如何在Delphi中显示Vista风格的气球提示?

    在输入验证时 我使用气球提示而不是消息框 我的问题是 在 Vista 上 它们具有带圆角的旧 XP 样式 而不是较新的矩形外观 我尝试使用 CreateWindowEx 创建它们并且tooltips class32或使用 SendMessa
  • webm视频转换API

    有谁知道用于将视频转换为谷歌新的 WebM 视频格式的 原型 c API 谷歌快速搜索显示 不 但是编码器示例 http www webmproject org tools vp8 sdk example simple encoder ht
  • symfony api 平台深度

    到目前为止 我们一直在 Symfony Doctrine 和 Serializer 深度方面苦苦挣扎 我希望能够使用 Symfony 提供一级深度的 JSON REST API 从而允许我直接从视图管理我的 外键 和关系逻辑 GET peo
  • 如何在iOS的Delphi程序中使用IPv6协议

    我尝试在我的移动程序中使用 IPv6 协议 我的服务器位于 NAT 后面的 LAN 内 在服务器上我使用IP端口3000 我已经组织了从路由器端口 45500 到服务器端口 3000 的虚拟服务器 端口转发 在服务器上 我运行 ipconf
  • 如何为 ApplicationController 中 after_action 过滤器中的所有操作渲染 json?

    是否可以在 Rails ApplicationController 中创建一个 after filter 方法 该方法在每个操作上运行并呈现为 JSON 我正在构建一个 API 并且希望将控制器中的每个操作的输出呈现为 JSON 客户控制器
  • 在 Delphi 或 C++ Builder 中使用 Chromium Edge WebView2 [重复]

    这个问题在这里已经有答案了 既然 Microsoft Chromium Edge 已经最终确定 是否可以在 Delphi 或 C Builder 中使用它 据我了解 它是基于WebView2成分 是否有一个组件 例如TWebView2或者E
  • 从 Delphi VCL 样式获取特定字形

    我想从 VCL 样式获取特定的位图 并将其设置为按钮上的图像 它实际上是帮助问号 在位图样式编辑器中是来自表单的 btnHelp 图像 要从 VCL 样式获取视觉元素 字形 您必须使用GetElementDetails和TCustomSty

随机推荐

  • 推送后导航栏与状态栏重叠

    结构 NavigationController gt VC1 gt VC2 VC1需要以编程方式显示或隐藏状态栏 它由statusBarHidden var statusBarHidden false didSet setNeedsStat
  • camunda 找不到任务 ID 为空的任务

    我是卡蒙达的初学者 我想完成一个任务 所以我通过调用启动一个实例 http localhost 8080 engine rest process definition key approve loan submit form 通过 Post
  • 如何确保使用 git 命令正确重新添加子模块,而无需手动更新 .gitmodulefiles?

    我正在使用的项目之一在 it s gitmodules 文件中 iit synthesis brando9 proverbot9001 cat gitmodules grep metalib submodule deps metalib p
  • 在日历中的特定日期之后更改背景颜色

    我有一个事件日历 我想将特定日期 SOC DATE 之后所有列的背景颜色更改为绿色 该日期之后更改为红色 我的日历如下 td class fc day fc wed fc widget content fc past td class fc
  • 如何禁用Android Studio更新通知?

    我不想更新到 2 3 他们坏了即时运行对于 4 4 4 设备 现在仅适用于 5 及更高版本 只是想隐藏通知 没问题 对于 Android Studio 你可以尝试一下 1 单击文件 gt 设置 在 Mac 上 Android Studio
  • 使用 display:none 读取 div 的滚动高度

    With a div父元素中的元素div隐藏着display none 我正在抛弃 jQuerytextarea元素到控制台 我看到scrollHeight第 0 个元素的属性是88 我尝试将此属性读取到 var 使用 element 0
  • 通过命令提示符将参数传递给 CMAKE

    我的项目有一个 makefile 我可以用它传递一个控制某些构建标志的参数 现在我想使用 CMake 做同样的事情 我创造了CMakeLists txt但我不知道如何传递参数并检查参数值CMakeLists txt 我的 Makefile
  • MongoDB 连接被对等方重置

    我研究过其他解决方案 例如 Mongodb 连接被对等方重置 https stackoverflow com questions 2961648 mongodb connection reset by peer Mongodb 自动重新连接
  • 如何将 Facebook 聊天工具添加到 Next.js?

    我尝试在 Next js 应用程序中添加 Facebook 客户聊天 但不起作用 我找不到我的代码有任何问题 如何在我的 Next js 应用程序中添加 Facebook 客户聊天 我的代码有什么错误吗 有更好的实现来解决这个问题吗 这是我
  • 如何从控制器返回 JavaScript?

    我正在处理 ASP NET Core 2 2 项目 需要从控制器返回 JavaScript 但是 我怀疑没有直接的方法 因此 我遵循this https stackoverflow com a 42698821 4753489操作系统回答并
  • 错误:未定义无法解析模块`@react-navigation/bottom-tabs`

    一直在寻找有关导航错误模块的解决方案 我尝试过重置缓存 删除 nodu modules 重新安装模块 但仍然无法正常工作 错误的完整详细信息 Unable to resolve module react navigation native
  • 使用 Interface Builder 在 nib 中设计 UICollectionView 单元格(无故事板)

    我正在尝试设计一个定制的UICollectionViewCell原型 在 Xcode 5 0 2 中 但是 Interface Builder 不允许我向我的UICollectionView在设计笔尖时 如果我使用故事板 我可以设置项目 单
  • 指向具有不同参数的成员函数的指针的容器

    我到处寻找 现代 C 设计和合作 但我找不到一种好方法来存储一组接受不同参数并对不同类进行操作的回调 我需要这个 因为我希望应用程序的每个对象都有可能将其方法之一的执行推迟到主对象Clock对象 跟踪当前时间 可以在正确的时刻调用此方法 我
  • 类型错误:names_to_saveables 必须是将字符串名称映射到张量/变量的字典

    我正在尝试使用 freeze graph py 转换 MobileNet 0 50 的重新训练版本 这是我的代码 python m tensorflow python tools freeze graph input checkpoint
  • DB 连接关闭后从 Oracle DB 读取 CLOB

    在我正在查看的 Java 类之一中 我看到以下代码 private oracle sql CLOB getCLOB oracle sql CLOB xmlDocument null CallableStatement cstmt null
  • php - 输出值到屏幕中间循环

    在长 foreach 循环期间是否可以将任何内容输出到屏幕 每当我执行一个需要很长时间的循环时 在循环完全完成之前 屏幕上不会输出任何内容 即使 echo 语句位于循环内部 有没有办法改变这种行为 您需要刷新缓冲区 如何执行取决于您的服务器
  • 如何在 CUDA 应用程序中构建数据以获得最佳速度

    我正在尝试编写一个简单的粒子系统 利用 CUDA 来更新粒子位置 现在 我定义的粒子有一个对象 该对象的位置由三个浮点值定义 速度也由三个浮点值定义 更新粒子时 我向速度的 Y 分量添加一个常量值以模拟重力 然后将速度添加到当前位置以得出新
  • 为什么删除不完整的类型实际上是未定义的行为?

    考虑这个经典的例子来解释什么not与前向声明有关 in Handle h file class Body class Handle public Handle Handle delete impl private Body impl in
  • JQUERY DOM:选择 Dom 加载后创建的元素

    我正在开发一个项目 在该项目中 我需要在调用函数时更改某个类的所有选择输入的值 问题是一些选择输入在 dom 首次加载时并不存在 它们是通过 Javascript 动态创建的 该函数适用于选择页面加载时存在的所有选择输入 但不适用于动态添加
  • Delphi REST API 帖子示例

    有人可以发布一个使用 Delphi 2005 向 API 发送 JSON POST 请求的简单示例 我发现了许多使用 GET 的示例 但 API 提供程序不允许通过 HTTP GET 请求 也不支持 URL 编码参数 我对调用 REST 服