【发布时间】:2015-10-25 16:45:11
【问题描述】:
我正在使用 slim 框架开发一个 API,当我用 postman 测试这个 api 时,内置的 phostorms 工具可以正常工作并返回有效的 json。但是当我从角度调用它时,它不会被角度解析。它显示了意外的索引错误。
我尝试在网络选项卡中监视有效负载,令人惊讶的是在实际的 json 响应之前附加了一些红色的子弹标记,例如点。
但它没有显示在预览选项卡中..
我不知道这些点在哪里。我用谷歌搜索了一下,找到了关于 Windows 上 BOM 问题的方法。但我不知道如何解决它。 你能帮我理解问题并纠正它吗?这是由代码或数据库或其他原因引起的问题吗?
关于我正在使用的信息
- 操作系统:Windows 7,
- 浏览器:谷歌浏览器,
- 前端 MVC:角度(问题只发生在这里),
- 后端:Slim 框架 (PHP),
- 数据库:Mysql(表和列在 utf8mb4_bin 和 latin1_swedish_ci 之间有混合排序规则)
- IDE:PHPStorm 8
【问题讨论】:
-
在运行 Fiddler 工具的情况下运行请求,您可以准确地看到那些红色的不可打印字符实际上是什么
-
后端 API 是否运行在与页面相同的域和端口上?听起来您遇到了 CORS 问题,响应中的空格无关紧要
-
是的,现在两者都在本地主机中运行。
-
如果我有 CORS 问题,我可以在 chrome 中看到错误,对吗? @charlietfl
-
通常看到的不是错误而是警告。 Postman 对跨域请求没有相同的安全限制,这就是它在那里工作的原因。我仍然假设端口不同?
标签: php json angularjs google-chrome slim