使用 PHP 的 telegram API 发送图像总是失败

2024-04-02

我想制作一个使用 Telegram API 发送图像的函数(参考 API:https://github.com/mgp25/Telegram-Bot-API/ https://github.com/mgp25/Telegram-Bot-API/),但是当我尝试运行它时,我总是收到如下错误:

消息:file_get_contents(''):无法打开流:HTTP 请求失败! HTTP/1.1 400 错误请求

这是我的代码[已更新]:

<?php

require 'Telegram.php';

$tele = new telegramBot('token');
//$info = $tele->sendMessage('218945828',"wadaw");
$url= 'image/maldini.jpg';
$info = $tele->sendPhoto('chatid',$url);
print_r($info);

?>

error :

警告:file_get_contents(): 无法打开流: php_network_getaddresses: getaddrinfo 失败: 没有这样的主机已知。在 C:\xampp\htdocs\mgp25\Telegram-Bot-API-master\src\Telegram.php 第 465 行

我的代码有什么问题吗?


您与 Telegram 有 SSL 连接吗?如果您没有与 telegram 建立 SSL 连接,则所有 telegram 命令都将不起作用,但如果您只能发送一条简单的消息,那么就不存在 SSL 问题。 毕竟,如果除了图像之外一切正常,请使用此 cURL 代码,除非使用准备使用的代码telegramBOT班级。 如果这不起作用(cURL),那么在服务器上读取或查找照片时确实存在问题(真实服务器或 xampp 文件夹等...) 如果是服务器(主机),则必须首先上传,如果是 xampp,则图像必须位于真实文件夹中。最好测试图像是否可访问(例如通过http://localhost/image/maldini.jpg http://localhost/image/maldini.jpg从网络浏览器?

cURL 准备使用发送照片的代码:

$BOT_TOKEN='1231325:AbXDECcvhir7'; //----YOUR BOT TOKEN
$chat_id=123456 // or '123456' ------Receiver chat id
define('BOTAPI','https://api.telegram.org/bot' . $BOT_TOKEN .'/');

$cfile = new CURLFile(realpath('image/maldini.jpg'), 'image/jpg', 'maldini.jpg'); //first parameter is YOUR IMAGE path
    $data = [
        'chat_id' => $chat_id , 
        'photo' => $cfile
        ];

    $ch = curl_init(BOTAPI.'sendPhoto');
    curl_setopt($ch, CURLOPT_HEADER, false);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_POST, 1);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    $result = curl_exec($ch);
    curl_close($ch);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 PHP 的 telegram API 发送图像总是失败 的相关文章

  • PHP:数组可以有一个数组作为键值对中的键吗?

    我得到这个数组的 非法偏移类型 public static CATS AND TYPES array Statement Administration array self CAT STATEMENT ADMIN gt Document A
  • 无法将 Laravel 应用程序部署到 EC2

    我的 Laravel 项目全部在我的本地主机上运行 我将其部署到 EC2 但没有任何反应 我在开发控制台中看到的只是内部错误 500 我缺少什么 在部署到 AWS 之前我需要更改哪些内容 这是网址 http ec2 52 88 99 75
  • 使用 GMail 和 phpMailer 发送时出现“服务器未接受密码:535 身份验证数据不正确”

    我在本地主机上运行相同的 php 脚本 我的带有 XAMPP 的 PC 和托管服务器上 它可以在我的电脑上运行 但不能在托管服务器上运行 当我从托管服务器发送它时 我得到以下输出 SMTP gt ERROR Password not acc
  • Codeigniter 如何清理输入?

    我正在构建一个 Codeigniter 应用程序 并且正在尽最大努力防止 SQL 注入 我正在使用 Active Record 方法来构建我的所有查询 我知道 Active Record 会自动清理输入 但我想知道到底清理到什么程度 它只是
  • 从(本地)python 脚本运行(远程)php 脚本

    如何让 python 本地 运行 php 脚本在远程服务器上 我不想用 python 脚本或任何东西处理它的输出 只需执行它并同时退出 python 而 php 脚本已经在工作并完成其工作 编辑 我想要实现的目标 python脚本连接ftp
  • 在 PHP 中生成 Excel 输出的最佳方法是什么? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 还有其他类似 PHPExcel 的 PHP 组件吗 有一些类可以生成 PHP Excel 文件 真正的 Excel 文件 而不是 csv
  • 正则表达式 - PHP Lookaround

    我有一个字符串 例如 foo Hello How are you I am very good thank you 我知道这是一个奇怪的字符串 但请留在我身边 P 我需要一个正则表达式来查找 在此处查找内容 之间的内容 并将其放入数组中 即
  • 检查 mySQL 数据库中现有用户的最佳方法? [复制]

    这个问题在这里已经有答案了 我正在尝试在 PHP 中创建用户登录 创建脚本 并且想知道创建用户时检查用户名是否存在的最佳方法 目前 我有以下代码 function createUser uname pword server gt conne
  • Laravel 5 / Lumen 请求标头?

    所以我不太确定如何解决这个问题 我已经尝试了一些方法 我将在下面列出其中之一 但是我想要做的是将 http 请求中发送的信息存储在 PHP 变量中 这是 Chrome Postman 发送我想要发送的请求的视图 注意 pubapi 是一个
  • 使用 Nginx 或 Apache 来提供动态内容? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 如何从Entity中postLoad的LifecycleEventArgs获取Container对象?

    我正在尝试使用以下方法将容器对象 在控制器中可用 注入到实体中postLoad lifecycleCallbacks 论点postLoad方法是LifecycleEventArgs 我可以看到容器属性 我想检索 EventManager o
  • 在表单提交时发送 div 的值

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

    我举的例子是phpexcel https phpexcel codeplex com 我刚刚尝试在 GET 方法中传递值 我已经完成了 现在我正在尝试在 a3 列中添加图像 参考代码
  • 复制具有所有关系的 Doctrine 对象

    我想复印一份他所有亲戚的记录 我正在尝试 o Doctrine getTable Table gt Find x copy object gt copy relations o gt getRelations foreach relatio
  • 每行仅显示 3 个 foreach 结果

    我的脚本如下 output table class products tr while info mysql fetch array data Outputs the image and other data output td img s
  • python 和回文

    我最近写了一个循环的方法 usr share dict words并使用我的返回回文列表ispalindrome x 方法 这是一些代码 有什么问题吗 它只会停止 10 分钟 然后返回文件中所有单词的列表 def reverse a ret
  • 将 PDF 存储在 MySQL 数据库中

    我正在开发一个应用程序 我需要创建 PDF 格式的发票 我在用着pdf包 https github com psliwa PdfBundle并且 PDF 文件已正确创建 public function helloAction format
  • Linux shell 命令逐块读取/打印文件

    是否有一个标准的 Linux 命令可以用来逐块读取文件 例如 我有一个大小为 6kB 的文件 我想读取 打印第一个 1kB 然后是第二个 1kB 看来猫 头 尾在这种情况下不起作用 非常感谢 你可以这样做read n在循环中 while r
  • 使用 php 在没有“manage_pages”权限的情况下发布到 Facebook 页面

    我有一个包含博客文章的网站 我们需要自动将博客发布到 Facebook 页面 目前我可以发布到我的时间线 但我无法发布到 Facebook 页面 我在谷歌搜索过 许多代码说我们需要manage pages权限 我的应用程序 Facebook
  • jQuery ajax 调用在 Mac Safari 和 Chrome 浏览器上返回空错误

    我几天来一直在寻找解决方案并尝试修复 但没有任何改变 老板使用的是 Mac 而我没有 所以我让他尝试重复修复并将输出转发给我 到目前为止还没有运气 因此 当前的设置是 我有一个包含用户名和密码输入的表单 该表单在经过验证后提交 验证是一个

随机推荐

  • 当客户端读取 HashMap 时如何刷新 HashMap

    我有一个静电HashMap在服务器启动时初始化 客户端在登录时从该地图初始化其数据 现在我需要刷新这张地图 但是客户端可以同时登录并从这张地图中获取数据 当他们阅读时 我可以更改如下所示的地图参考吗 我不能使用synchronized因为它
  • jCenter 和 Bintray 正在关闭。怎么办?如果使用第三方库如何解决?

    jCenter 和 Bintray 正在关闭 那么我们该如何解决这个问题 如果项目中使用了第三方库怎么办 请帮帮我 提前致谢 在你所有的build gradle文件替换jcenter by mavenCentral 或者如果 mavenCe
  • 如何在 fxml 项目中使用 font Awesome (javafx)

    我想在我的项目中使用 font Awesome 字体 但我不知道如何在我的项目中使用 font Awesome 我找到了一些示例 但它们不能在 fxml 中使用 很棒的javafx字体 https bitbucket org Jerady
  • 如何根据类的值将类对象添加到 hashMap 中?

    我正在从数据库中检索一些值 这些值需要添加到列表中 然后根据其值添加到具有特定键的 MAP 中 例如 row 1 name A category 1 row 2 name B category 2 row 3 name C category
  • 当我滚动 UIPickerView 时,如何实时获取所选值

    For example in this image when I m scrolling the UIPickerView to 2012 9 28 what I want is that the text of the black lab
  • 如何在 Silverlight 中的 Border 元素上制作虚线边框?

    我怎样才能让这个Border Silverlight元素的底部边框变成红色dotted里面有一个红色的solid line Border border new Border border CornerRadius new CornerRad
  • WPF 图表:如何折叠线系列中的数据点

    我在图表中有多条线系列 首先绘制图表线 然后沿着线绘制点 这很烦人 而且大点的大小使得大型数据集根本毫无用处 目前我正在为每个系列做这个
  • 选择限制功能不适用于reactjs 复选框形式

    我有一个从 json 获取复选框的 React 组件 复选框的每个部分最多可以包含 5 个复选框 我试图将每个部分中的限制设置为最多 2 个选择 但是它没有按应有的方式工作 主要成分是项目列表 js 复选框来自复选框 js 这是我正在尝试做
  • current->mm 在 Linux 内核中给出 NULL

    我想遍历页表 因此我访问了 current gt mm 但它给出了 NULL 值 我正在研究 linux 内核 3 9 我不明白 current gt mm 怎么会为零 这里有什么我想念的吗 这意味着您处于内核线程中 在Linux中 内核线
  • 用MPI发送size_t类型数据

    在 MPI 中发送 size t 类型数字的最安全方法是什么 例如 我确信它是not将其作为 MPI INT 盲目发送是安全的 MPI LONG 总是有效吗 使用宏怎么样 include
  • 选择看起来像错误/缺失功能的重载时,C# 编译器出现奇怪的行为

    我最近发现 C 编译器的一个有趣的行为 想象一下这样的界面 public interface ILogger void Info string operation string details null void Info string o
  • 使用 C 函数扩展 Numpy

    我正在尝试加速我的 Numpy 代码 并决定实现一个特定的函数 而我的代码大部分时间都在 C 中使用 我实际上是 C 的菜鸟 但我设法编写了一个函数 将矩阵中的每一行归一化为 1 我可以编译它 并用一些数据 在 C 中 测试它 它满足了我的
  • 使用 RxJS 将多个 ajax 请求转换为 Observables

    我正在努力解决某件事 我猜这意味着我误解了并且正在做一些愚蠢的事情 我有一个可观察对象 需要使用它来创建一些对象 将其发送到服务器进行处理 将服务器的结果与我发送的对象结合起来 然后将其转换为可观察对象 所以我想要做什么 我认为 就像是 v
  • 具有 http 身份验证的 Zend SOAP 服务器 WSDL URI

    我正在尝试使用 Zend Soap Server 设置 SOAP 服务 ZF1 我的问题是 WSDL URI 受密码保护 可以通过设置 https 用户名 来访问它 电子邮件受保护 cdn cgi l email protection 作为
  • 使 Python 单元测试因任何线程的异常而失败

    我正在使用单元测试框架来自动化多线程 python 代码 外部硬件和嵌入式 C 的集成测试 尽管我公然滥用单元测试框架进行集成测试 但它的效果非常好 除了一个问题 如果任何生成的线程引发异常 我需要测试失败 这可以通过单元测试框架实现吗 一
  • svn update 没有更新!

    我希望 svn update 用服务器上的文件覆盖我的本地文件 即使我的本地文件有修改 我也想扔掉它们并使用远程存储库上的版本 我怎么做 我试过svn update force但它不起作用 Update 感谢您的回答 所以我使用这样的恢复
  • 纯 Web 应用程序(HTML5 等)的推荐 IDE [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • actionbarsherlock 选项卡中的 Google 地图

    我正在尝试让谷歌地图 v2 在我的应用程序中工作 我见过几个示例 展示了如何在活动中打开 SupportMapFragment 这个想法是你的活动会调用setContentView R layout map layout 其中 map la
  • ggplot2 中的scale_colour_gradient 与scale_fill_gradient

    我绝对是初学者ggplot2并尝试使用这个包画出漂亮的人物 我正在阅读手册 但我不明白它们之间的区别scale colour gradient vs scale fill gradient 在我的分析中 我将使用 假设 进行观察 因为我不确
  • 使用 PHP 的 telegram API 发送图像总是失败

    我想制作一个使用 Telegram API 发送图像的函数 参考 API https github com mgp25 Telegram Bot API https github com mgp25 Telegram Bot API 但是当