Symfony 4实现REST API

吉普赛人

我在Symfony 4项目中实现了一个简单的REST API。当我用邮递员测试getArticle()函数时,这是错误消息:

控制器必须返回响应(给定的Object(FOS \ RestBundle \ View \ View))。

使用var_dump($ articles)内容将按预期显示,因此我想问题可能出在FOSRestBundle上,但是我不知道执行此工作的其他方法。

class ArticleController extends FOSRestController
{

/**
 * Retrieves an Article resource
 * @Rest\Get("/articles/{id}")
 */
public function getArticle(int $articleId): View
 {
    $em = $this->getDoctrine()->getManager();
    $article = $em->getRepository(Article::class)->findBy(array('id' => $articleId));

    // In case our GET was a success we need to return a 200 HTTP OK response with the request object
    return View::create($article, Response::HTTP_OK);
 }
}
吉普赛人

我自己找到了返回HttpFoundation \ Response的解决方案,这可能对某人有所帮助。

/**
 * Lists all Articles.
 * @FOSRest\Get("/articles")
 */
public function getArticles(Request $request): Response
{
    $em = $this->getDoctrine()->getManager();
    $articles = $em->getRepository(Article::class)->findAll();

    return new Response($this->json($articles), Response::HTTP_OK);
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在基于Symfony的REST API和Vue.js前端中实现XSS预防的位置

Symfony 3.4-Api Rest修改值

使用Symfony3的API REST的结构

Symfony REST API和实体层次结构

Symfony Rest API,WSSE和Bcrypt

Symfony Rest API lexikjwtauthenticationbundle JWT linux

Symfony REST API。我需要表格吗?

使用API调用身份验证的symfony4 UserProviderInterface实现

Symfony 4 API 测试环境测试

Symfony 4 API 平台+LexikJWTAuthenticationBundle:凭据错误

401/405 错误 Symfony 4 REST:docker 上的 JWT API 身份验证 (LexikJWTAuthenticationBundle) - ngnix

Symfony 4 API Rest PUT:将数据映射到数据库实体

Symfony 4 - 如何为确实存在路由的 Web api REST 修复“404 Not Found”?

Kafka Rest API实现

Symfony 上的 API 请求限制,如何最好地实现?

如何正确实现 RESTful API PATCH 方法以基于 Symfony 4 更新具有 OneToMany 关系的多个实体?

Symfony - Doctrine:设计用于接收多对多实体的 REST api

在Symfony中的REST API中创建链接的实体

Symfony2 REST API,始终返回错误以验证表单

如何获得Symfony表单以使用REST API?

使用PhpStorm和Xdebug调试Symfony REST API

Symfony2 FOSRESTBundle REST API返回PDF

使用Angular JS,CORS调用Symfony 2 Rest API

Symfony REST API-如何处理无效表格

Symfony2 REST API-部分更新

symfony4,FOSRestBundle和ramsey / uuid-doctrine-将uuid对象转换为REST API的字符串

REST API中的gZip实现

Symfony 4 API部署到Heroku无法正常工作

(Symfony 4)如何实现常量类