• PHP传输base64数据不完整解决方法


    前言

    最近在做OCR增值税务处理时,接口是通过图片转base64提交处理然后返回数据的,我通过前端将图片转换为base64提交到后端接收时,通过在线工具进行测试,发现传递过去的数据可以使用,接收到的数据却提示损坏

    解决办法

    <?php
    header('Content-Type: text/html; charset=utf-8');
    header('Access-Control-Allow-Origin: *'); // 允许任何网址请求
    header('Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE'); // 允许请求的类型
    header('Access-Control-Allow-Credentials: true'); // 设置是否允许发送 cookies
    header('Access-Control-Allow-Headers: Content-Type, Content-Length, Accept-Encoding, X-Requested-with, Origin'); // 设置允许自定义请求头的字段
    
    
    // 接收POST数据
    
    $base64=$_POST['base'];
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    替换为以下代码:

    <?php
    header('Content-Type: text/html; charset=utf-8');
    header('Access-Control-Allow-Origin: *'); // 允许任何网址请求
    header('Access-Control-Allow-Methods: POST, GET, OPTIONS, DELETE'); // 允许请求的类型
    header('Access-Control-Allow-Credentials: true'); // 设置是否允许发送 cookies
    header('Access-Control-Allow-Headers: Content-Type, Content-Length, Accept-Encoding, X-Requested-with, Origin'); // 设置允许自定义请求头的字段
    
    
    // 接收POST数据
    $postData = file_get_contents('php://input');
    $base64=urldecode($postData);
    $new_base64 = substr($base64, 27); 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    即可解决

  • 相关阅读:
    Highcharts JS 10.3.1 开心没水印
    Flink 官方社区系列视频教程
    RPA助力商超订单自动化!
    day01-Tomcat框架分析
    今天的码农女孩开始学习react的知识
    STL容器 ——stack和queue的模拟实现
    MPO抗体对丨MPO抗体在治疗疾病领域的应用
    【面试经典150 | 链表】循环链表
    力扣刷题第二十六天--二叉树
    乘法逆元的模板代码
  • 原文地址:https://blog.csdn.net/qq_35230125/article/details/139098660