Symfony 操作与 json 响应
我正在使用 PHP + CURL 在我的操作之一中从服务器获取数据。然后我从我的操作中以 json 形式返回数据。
我的操作如下所示
public function executeTest(sfWebRequest $request)
{
$json = $this->getServerResponse(); // fetches data using CURL
$this->getResponse()->setContentType('text/json');
return $this->renderText($json);
}
当执行上述操作时,收到的 json strng 为(例如):
{ '好的': true }1
如果我将上述操作中的最后一行更改为 返回 $this->renderText('foo');
返回的 JSON 为:
{ 'ok': true }foo
如果我将上面操作中的最后一行更改为 返回 $this->renderText('');
返回的 JSON 为:
{ '好的': true }
我的问题是:
为什么来自服务器的 JSON 数据与 renderText() 方法中的文本一起显示?
附加到 JSON 数据的“1”来自哪里?
如何解决/修复此问题?
我在 Ubuntu 上运行 Symfony 1.4.x
I am using PHP + CURL to fetch data from a server in one of my actions. I then return the data as json from my action.
My action looks like this
public function executeTest(sfWebRequest $request)
{
$json = $this->getServerResponse(); // fetches data using CURL
$this->getResponse()->setContentType('text/json');
return $this->renderText($json);
}
When the above action is executed, the received json strng is (for example):
{ 'ok': true }1
If I change the last line in the action above to
return $this->renderText('foo');
the returned JSON is:
{ 'ok': true }foo
If I change the last line in the action above to
return $this->renderText('');
the returned JSON is:
{ 'ok': true }
My question are:
Why is the JSON data from the server being displayed together with the text in my renderText() method?
Where is the '1' appended to the JSON data coming from?
How do I resolve/fix this issue ?
I am running Symfony 1.4.x on Ubuntu
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
从表面上看,您的问题出在
getServerResponse()
上。如果没有看到该功能,就无法提供更多帮助。From the looks of it, your problem lies in
getServerResponse()
. Can't help more without seeing that function.