PHP cURL:如何将正文设置为二进制数据?

2024-04-02

我正在使用一个 API,它希望我发送一个 POST,其中包含文件中的二进制数据作为请求的正文。如何使用 PHP cURL 完成此任务?

与我想要实现的目标等效的命令行是:

curl --request POST --data-binary "@myimage.jpg" https://myapiurl

你可以把你的身体放进去CURLOPT_POSTFIELDS.

Example:

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,            "http://url/url/url" );
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt($ch, CURLOPT_POST,           1 );
curl_setopt($ch, CURLOPT_POSTFIELDS,     "body goes here" ); 
curl_setopt($ch, CURLOPT_HTTPHEADER,     array('Content-Type: text/plain')); 

$result=curl_exec ($ch);

取自here https://stackoverflow.com/questions/871431/raw-post-using-curl-in-php

当然,设置你自己的标头类型,然后就可以了file_get_contents('/path/to/file')对于身体。

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

PHP cURL:如何将正文设置为二进制数据? 的相关文章

  • 我应该在 laravel 5.1 中将模型保存事件监听器放在哪里

    Laravel 文档说我应该将模型事件放在EventServiceProvider boot 像这样的方法 public function boot DispatcherContract events Raisefund saved fun
  • 另一个数组内的 stdClass 对象数组

    我正在尝试从下面的 array1 获取信息 通过执行以下操作 我可以毫无问题地获取场地名称和地点地址 array2 array array3 array foreach array1 as item array2 item gt venue
  • PHP 错误:php_network_getaddresses:getaddrinfo 失败:(从其他站点获取信息时。)

    尝试从外部源获取信息时 我收到以下错误 Warning php network getaddresses getaddrinfo 失败 第 行名称解析暂时失败 昨天一切都很好 那么这个脚本发生了什么 它不起作用并给我上面的错误 有什么解决方
  • 将一段文本保存到mysql

    我正在使用 php 和 mysql 做一个项目 我对此很陌生 现在我必须将一段文本存储到我的数据库中 在表中 对于列 I tried varchar 5000 创建表时但它不允许我 所以请给我一个解决方案 你的 mysql 字段类型应该 T
  • paypal数字商品集成如何启用访客支付?

    您好 我正在使用贝宝集成向导进行数字商品结帐 PHP https www paypal labs com integrationwizard https www paypal labs com integrationwizard 它应该支持
  • 如何让 PHP、符号链接和 __FILE__ 很好地协同工作?

    在本地主机上 我有以下目录结构 share www trunk wp content plugins otherfolders share www portfolio wp content symlink Where symlink是一个符
  • 如何用php将文件内容转换为字节数组

    我想用PHP将上传的文件保存 插入 到数据库中 数据库字段的类型是varbinary 最后 我想要获得 VarBinary 输出 的内容 就像在 C 中读取文件然后将其存储在字节数组中并将数组插入到 VarBinary 中一样 我与数据库的
  • woocommerce 自定义结账字段添加费用以订购 ajax

    我试图在结账时在订单总额中添加自定义费用 我在 woocommerce 中添加了一个复选框 add action woocommerce after checkout billing form add box option to check
  • 创建一个类的所有常量的数组?

    我正在使用一个定义了近 20 个常量的类 因为我希望所有这些常量值都在一个数组中 我只想知道 有没有什么方法可以创建一个类的所有常量的数组 我尝试过compact https www php net manual en function c
  • 强制下载不同的文件[关闭]

    这个问题不太可能对任何未来的访客有帮助 它只与一个较小的地理区域 一个特定的时间点或一个非常狭窄的情况相关 通常不适用于全世界的互联网受众 为了帮助使这个问题更广泛地适用 访问帮助中心 help reopen questions 我正在尝试
  • PHP 构造函数返回 NULL

    我有这个代码 是否有可能User对象构造函数以某种方式失败 以便 this gt LoggedUser被分配了一个NULL构造函数返回后值和对象被释放吗 this gt LoggedUser NULL if SESSION verbiste
  • Laravel 5 / Lumen 请求标头?

    所以我不太确定如何解决这个问题 我已经尝试了一些方法 我将在下面列出其中之一 但是我想要做的是将 http 请求中发送的信息存储在 PHP 变量中 这是 Chrome Postman 发送我想要发送的请求的视图 注意 pubapi 是一个
  • 使用链接进行电子邮件验证是一个坏主意

    在我的注册过程中 用户注册后 他们会收到通过电子邮件发送的验证链接 如果他们单击该链接 那么他们的帐户才会得到验证 但这种验证方法对于机器人来说是不是太容易了 我认为电子邮件可以由机器人创建 但可以肯定的是 如果验证只是单击链接 那么它也可
  • 如何修复在 laravel 项目中运行vendor/bin/phpunit 时权限被拒绝的问题

    每当我执行vendor bin phpunit在我的 laravel 项目的根路径中 它返回一个没有权限错误 我该如何解决这个问题 重要提示 我不想使用composer update或删除部分或全部vendor 目录然后使用composer
  • 如何使用 PHP mysqli 增加 MySQL 中的值

    我在 MySQL 表中有一个整数列 名为col1 现在 我需要的是将其值增加某个数字 例如 1 可能是 2 3 或任何数字 也就是说 如果它的值已经是 10 现在我希望它变成 11 我知道 我可以通过首先选择原始值 用 PHP 增加它 然后
  • 在表单提交时发送 div 的值

    我正在尝试提交一个包含几个不同输入的表单 这些输入都工作正常 然而 输入之一是文本区域 某种程度 我必须将其更改为内容可编辑的 div 主要是因为我创建了自己的粗体 斜体和下划线按钮 这些按钮不适用于普通文本区域 问题是提交时的表单没有将文
  • 在Windows Xampp上安装和使用elasticsearch php客户端

    我下载的是elasticsearch 5 1 1 zip来自https www elastic co downloads elasticsearch https www elastic co downloads elasticsearch
  • PHPExcel:自动下载并打开Excel文件

    我已经成功创建并保存了一个 Excel 文件 Rename the file fileName URL MODEL case caseNO xlsx Write the file objWriter PHPExcel IOFactory c
  • 如何从symfony2中的现有表生成实体?

    我有带有一些字段的表 my table 我想在 MyBundle 中使用 my table 生成实体 但我不想重新创建 MyBundle 中的所有实体 我怎样才能做到这一点 这是你可以做到的方法 第一步 要求Doctrine自省数据库并生成
  • Codeigniter:无法使用提供的设置连接到数据库服务器

    我使用 codeigniter 作为 cms 框架 如果数据库主机名是 localhost 它可以正常工作 db default hostname localhost db default username root db default

随机推荐

  • 大十进制乘法

    我尝试将两个相乘BigDecimal价值观与multiply方法如下 BigDecimal dur BigDecimal valueOf 60 1 1 BigDecimal bal BigDecimal valueOf 1 1 BigDec
  • 如何在 Windows 中使用批处理脚本创建符号链接?

    我当前正在使用以下脚本将具有特定前缀的所有文件复制到目标目录 for f delims k in dir d Search Path File Prefix s b do copy k d Target Directory 这工作正常 但我
  • Rails 文件下载和查看更新 - Howto?

    这看起来应该是直截了当的 但我很难过 我有一个视图控制器的链接 最终使用 send data 将文件下载到用户的硬盘驱动器 这非常有效 并且它使当前视图显然没有受到影响 但现在我希望页面在下载完成后提供一些反馈 在调用 send data
  • 用户、组和角色的多对多声明式 SQLAlchemy 定义

    我是 SQLAlchemy 的新手 想知道定义此类表和关系的最佳方法是什么 我希望能够通过以下方式访问用户组user groups 分组中的用户group users 并找出用户在组中的角色 我假设将在关联模型中定义逻辑 我还想按组选择所有
  • 如何将perl6文件编译为exe

    我正在使用基于 Windows 上 MoarVM 构建的 perl6 版本 我创建了一些 perl6 文件并想将其编译为 exe 我尝试了以下方法 perl6 target MAST r pl gt r 现在我想将 r 编译为可执行文件 我
  • ListView 带有 longClick 用于显示和隐藏复选框?

    我沿着代码在这里 网络链接 http windrealm org tutorials android listview with checkboxes without listactivity php并且代码稍微修改了一下 变成了这样 文件
  • 销毁对象放置新后未调用析构函数

    我不知道为什么这不起作用 下列Function是通过放置 new 创建的 提供了一个函数来检查它是否应该被破坏 如果是 则手动调用其析构函数 这是测试用例 似乎从未调用析构函数 Represents a function at runtim
  • Mac OS 中的 COM 相当于什么?

    我是 Mac 编程领域的新手 有人可以告诉我 Mac 中可重用 COM 组件的等效项是什么 以及一些入门资源的链接 创建可重用的类似 COM 的组件并从调用应用程序引用这些组件 吗 谢谢 澄清 我想知道是否存在类似的技术 在操作系统级别受支
  • 将旧版本的代码添加到 git repo

    我的项目有一个 git 存储库 我的第一次提交是 v1 2 在使用 git 之前 我使用代码的每日快照来保证其安全 我现在想将所有快照添加到存储库中 并从 v0 3 开始 但我已经在 1 2 之上进行了相当多的提交 那么最好的方法是什么 我
  • 在 Pandas 数据框中查找唯一值,无论行或列位置如何

    我有一个 Pandas 数据框 我想找到该数据框中的所有唯一值 无论行 列如何 如果我有一个 10 x 10 数据框 并假设它们有 84 个唯一值 我需要找到它们 而不是计数 我可以创建一个集合并通过迭代数据帧的行来添加每行的值 但是 我觉
  • 如何检查通过联系表 7 提交的电子邮件是否存在于我的数据库中?

    当客户通过联系表 7 提交电子邮件时 如何检查电子邮件是否已存在于我的数据库中并将通知消息更改为 您的电子邮件已存在于我们的数据库中 到目前为止 我已经尝试使用 before send 挂钩 但是当我单击提交时 页面只是挂起并且没有确认消息
  • 如何告诉捆绑程序忽略不存在的宝石?

    我的组织有许多用于自动化测试的内部 gem 但生产部署不需要它们 我正在尝试使用 Bundler 因此在我的 Gemfile 中我将这些 gem 包装在 group test development do gem dashboard sum
  • 对于临时/循环存储来说,最好/最快的 MySQL 表架构是什么?用于会话管理?

    当为非常动态的网站编写自定义 MySQL 数据库驱动的 PHP 会话管理时 会话表的最佳 最快读 写访问 结构是什么 错误示例 未优化 CREATE TABLE session session id VARCHAR 32 NOT NULL
  • 如何忽略 git 存储库根目录中的目录,但将其进一步包含在树中?

    我需要使用 gitignore排除我的存储库根目录中的目录 但是 其他同名目录存在于目录树的更深处 我需要将它们包括在内 看来当我将目录名称放入 gitignore 它捕获所有这些目录 而不仅仅是我需要忽略的目录 我明白那个 gitigno
  • Visual Studio 2015 中未生成 pdb 文件

    我正在开发一个应用程序 使用C MVC 与实体框架 数据库优先 VS 2015 我创建了一个单独的项目数据层访问 当我在调试或发布模式下构建此项目时 不会生成调试文件 即 pdb file 请告诉我 我怎样才能生成这个 pdb我的项目的文件
  • 更新到 v4.8.0 后 phpMyAdmin 出现错误:$cfg['TempDir'] (./tmp/) 无法访问

    phpMyAdmin在 v4 7 9 上运行良好 今天更新到 v4 8 0 后 替换旧的phpmyadmin文件夹与新文件夹 我在 phpMyAdmin 中收到此消息 cfg TempDir tmp 不可访问 phpMyAdmin 无法 缓
  • ansible if else 构造

    这是我的 if else Ansible 逻辑 name Check certs exist stat path etc letsencrypt live rootDomain fullchain pem register st inclu
  • 带有 Google 卫星图层的 Leaflet Map API [重复]

    这个问题在这里已经有答案了 我对此非常感兴趣传单地图API http leaflet cloudmade com 但是 我需要能够使用 Google 卫星层 我无法找到有关如何将 Google 卫星图层添加到 Leaflet 的示例 我知道
  • Java 中的范围滑块

    大家好 我想知道是否有人听说过提供范围滑块的 Java 组件 滑块 即带有两个旋钮 用于定义最小最大值的范围 而不仅仅是一个 我在网上找到了 perfuse 库中的 JRangeSlider 但我有两个问题 首先 但不是那么重要 是它有自己
  • PHP cURL:如何将正文设置为二进制数据?

    我正在使用一个 API 它希望我发送一个 POST 其中包含文件中的二进制数据作为请求的正文 如何使用 PHP cURL 完成此任务 与我想要实现的目标等效的命令行是 curl request POST data binary myimag