You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

CodeIgniter3集成InPost API第三方库时出现请求超时500错误

调试CodeIgniter3中InPost API创建运单超时500错误的步骤

1. 调整PHP执行超时设置

默认PHPmax_execution_time为30秒,刚好匹配你的超时时间:

  • 临时在控制器开头添加set_time_limit(60);延长执行时间,测试是否还会超时
  • 长期解决方案:修改php.ini中的max_execution_time和max_input_time参数,设置为60或更合理的值

2. 开启第三方库的请求日志

imper86/php-inpost-api基于Guzzle,可通过中间件记录详细请求日志:

use GuzzleHttp\HandlerStack;
use GuzzleHttp\Middleware;
use Monolog\Logger;
use Monolog\Handler\StreamHandler;

// 初始化日志实例
$logger = new Logger('inpost-api');
$logger->pushHandler(new StreamHandler(APPPATH . 'logs/inpost_api.log', Logger::DEBUG));

// 配置Guzzle handler并添加日志中间件
$stack = HandlerStack::create();
$stack->push(Middleware::log($logger, new \GuzzleHttp\MessageFormatter()));

// 初始化API客户端时传入handler
$apiClient = new \Imper86\PhpInpostApi\PhpInpostApi(
    '你的API密钥',
    '你的API秘钥',
    ['handler' => $stack]
);

之后查看application/logs/inpost_api.log,就能看到请求头、响应内容、API侧错误等细节。

3. 检查CI3日志配置

  • 打开application/config/config.php,将log_threshold设置为4(DEBUG级别),确保捕获所有调试信息
  • 确认log_path目录有写入权限,避免因权限问题导致日志无法生成

4. 手动捕获并记录异常

在运单创建逻辑外层包裹try-catch,强制记录错误信息:

try {
    // 你的运单创建逻辑
    $response = $apiClient->shipments()->create($shipmentData);
    log_message('debug', 'InPost API响应: ' . print_r($response, true));
} catch (\Exception $e) {
    log_message('error', 'InPost API错误: ' . $e->getMessage() . ' 堆栈跟踪: ' . $e->getTraceAsString());
    // 调试环境可直接输出信息
    echo '错误详情: ' . $e->getMessage();
    echo '<pre>' . $e->getTraceAsString() . '</pre>';
    exit;
}

5. 查看服务器级错误日志

如果CI应用日志无信息,直接查看服务器日志:

  • Nginx:/var/log/nginx/error.log
  • Apache:/var/log/apache2/error.log
    这里通常会记录PHP致命错误、内存溢出等导致500错误的根源。

6. 直接测试API连通性

用Postman或curl手动调用InPost创建运单接口,传入相同参数,验证是否是API本身的问题:

curl -X POST "https://api.inpost.pl/v1/shipments" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer 你的访问令牌" \
-d '{"收件人信息": "...", "包裹信息": "..."}'

内容的提问来源于stack exchange,提问作者user20508390

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 06:05:48