API端点响应中的未知字符

问题描述 投票:0回答:0

我的遗留项目依赖于 Drupal 7 和 PHP 5.6,遇到了一个问题,即通过 API 端点将未知字符添加到某些数据中。特别令人困惑的是,这个字符只出现在一些受影响的数据中,我不确定是什么原因造成的。

未知字符的存在使我们无法正确解码 API 响应,尽管我已经确定了在解码之前删除该字符的解决方法,但我的任务是调查其来源。虽然我无法在我的本地环境中重现该问题,但在对生产服务器进行任何更改之前,我需要具体的证据。

这是未知字符的十六进制(

efbb bf
):

在对我的项目进行彻底搜索后,我只能在 UnicodeTest.txt 文件中找到该字符,如附图所示。

ZWNBSP 是在我的 API 端点的开始响应中显示的未知字符。如果我复制并粘贴它就像空字符。我无法通过 Google 聊天或其他消息传递应用程序发送它。似乎我在浏览器上看不到那个字符,但我可以在 PHPstorm 终端上看到这个字符。您可以在本页上查看“!”#¥%&“字符之前的字符

不知道从哪里来的。有人有线索吗?

我心中的可能性:

  1. 来自 CDN/WAF 的 Bug,我们使用 CloudFlare
  2. 生产服务器上的 PHP 错误
  3. 来自 drupal 7.39 的错误(不太确定,因为仅在 UnicodeTest.txt 中发现该字符并且仅用于单元测试)
php api unicode drupal-7 response
© www.soinside.com 2019 - 2024. All rights reserved.