首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

在Rest API中将参数作为原始JSON发送时,whereJsonContains() laravel 5.8中存在问题

在Rest API中,当我们需要将参数作为原始JSON发送时,在laravel 5.8中使用whereJsonContains()函数可能会遇到一些问题。

whereJsonContains()是laravel框架提供的一个查询构造器方法,用于在JSON字段中查找包含指定值的记录。它可以用于查询包含特定JSON值的记录,以及查询包含指定键值对的记录。

然而,在laravel 5.8版本中,whereJsonContains()存在一些问题。其中一个问题是,当我们将参数作为原始JSON发送时,laravel 5.8无法正确解析这些参数。这可能导致查询结果不准确或无法正常工作。

为了解决这个问题,我们可以考虑升级到laravel的更高版本,如laravel 6.x或更高版本。在较新的laravel版本中,开发团队已经修复了这个问题,并提供了更好的支持。

另外,除了升级laravel版本外,我们还可以尝试使用其他方法来处理这个问题。例如,可以将参数作为字符串发送,并在后端进行解析和处理。或者,我们可以自定义查询构造器方法来处理这种情况。

总结起来,当在Rest API中将参数作为原始JSON发送时,在laravel 5.8中使用whereJsonContains()可能会遇到问题。为了解决这个问题,我们可以考虑升级到较新的laravel版本或使用其他方法来处理。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Laravel API教程:如何构建和测试RESTful API

在本文中,我们将探讨如何构建和测试使用Laravel进行身份验证的强大API。我们将使用Laravel 5.4,所有的代码都可以在GitHub上参考。...$table->timestamps() 将会为我们生成时间戳——在created_at和updated_at时,但是不用担心设置一个默认的,Laravel将在需要时更新这些字段。...发送正确的404响应 如果您尝试获取不存在的资源,则会抛出异常,您将收到整个堆栈跟踪,如下所示: ?...使用它将使我们的测试快速运行,但是权衡是一些迁移(migration )命令(例如约束)在该特定设置中将无法正常工作。...这意味着当我们打到认证中间件时,它将当前用户保存在 TokenGuard 实例中,以避免再次触发数据库。

20.4K20

通过 Laravel 查询构建器实现复杂的查询语句

你一定有过这样的经历,从数据库获取指定查询结果后,以主键 ID 值为键,以某个字段值为值构建关联数组,以前,你可能不得不遍历查询结果构建数组才能解决这样的问题,在 Laravel 中,我们只需在查询构建器上调用...注意,我们在传递参数到 pluck 方法的时候,键对应的字段在后面,值对应的字段在前面。...使用该方法时,需要注意传递给 whereIn 的第二个参数不能是空数组,否则会报错。 同样,与之相对的,还有一个 whereNotIn 方法,表示与 whereIn 相反的查询条件。...users') ->whereJsonContains('options->languages', ['en_US', 'zh_CN']) ->get(); 高级查询 参数分组 除了以上这些常规的...注:在写 SQL 语句时,OUTER 可以省略。

30.2K20
  • PHP发送和接收JSON请求

    现在微服务中,很多API由于需要传递的参数较多所以要求用包含所有参数的JSON数据作为POST请求的请求体来替代FormData传递参数的方式,在参数量较多时POST JSON要比POST FormData...便于开发和测试,今天我们就来看一下在PHP中如何发送和接受JOSN POST,以及在Laravel框架中针对JSON Request提供的访问JSON请求数据的便捷方法。...POST $data = json_decode(file_get_contents('php://input'), true); php://input 是个可以访问请求的原始数据的只读流。...使用Guzzle发送JSON请求 很多时候在开发中我们并不会像上面那样用php curl库来发送请求而是使用开源的Http包,常用的Http package比如 Guzzle都有为发送JSON请求提供了便捷的方法...key的值 发送 JSON 请求到Laravel应用的时候,只要 Content-Type 请求头被设置为 application/json,都可以通过 input 方法获取 JSON 数据,还可以通过

    8.1K30

    SpringBoot中REST API的错误异常处理设计

    在本文中,我们将讨论并实现Spring的REST API异常处理。...Restful API错误/异常设计 在RESTful API中设计异常处理时,最好在响应中设置HTTP状态代码,这样可以表示客户端的请求为什么会失败的原因。...由于存在所有这些限制,因此建议不要在构建RESTful API时使用此方法 Spring的异常处理 Spring 3.2引入了@ControllerAdvice这个支持全局异常处理程序机制的注释。...这是在使用基于Spring的REST API时的一种便捷方式,因为可以指定ResponseEntity为返回值。...如果处理一个请求发生异常没有异常处理器时,决定"NoHandlerFoundException"是否抛出 概要 在Spring基础REST API中正确处理和处理异常非常重要。

    7.1K31

    Laravel 7发行说明

    引入 Laravel 框架或其组件时,应始终使用版本约束,如 ^7.0,因为 Laravel 的主要版本确实包含非兼容性更改。我们会努力确保您可以在一天或更短的时间内更新到最新版本。...为此, Laravel 7 允许你在路由参数中指定某个字段: Route::get('api/posts/{post:slug}', function (App\Post $post) { return...post:slug}', function (User $user, Post $post) { return $post; }); 当使用自定义键隐式绑定作为嵌套的路由参数时,Laravel...默认情况下,Laravel 将使用 mail 配置文件中的 default 选项指定的邮件驱动作为邮件驱动。然而,你可以通过 mailer 方法来使用特定的邮件驱动来发送邮件。...假如我们在执行查询时进行 date 类型转换将更方便。

    9K20

    为什么 Laravel 这么优秀?

    Laravel Container 支持自动帮你构造容器中不存在的对象,如果这构造这个对象时还依赖另外的对象,Laravel 会尝试递归的创建它,举个例子: class A { public function...Laravel 的绝大多数方法参数中,你可以随意的注入任意数量的参数;这也是我最喜欢的一点。...不足 # Laravel 为人垢弊的问题就是太慢了,一个普通的应用一个 RTT 可能也要 100~200 ms;当遇到稍微大一点的并发请求时,CPU 的负载就奔着 90% 去了。...本来我们只需要熟悉标准的 Vue/React API 就好了,现在却不得不学习一种新的语法,而这些语法是构建在我们熟悉的 API 之上的;有时候你原始的 API 你知道怎么写,但是新框架的新语法让你不得不查看更多的文档甚至源码...这里还有个例子是 Laravel 在之前推出了 Laravel Bootcamp 用来教新人怎么快速上手 Laravel,但这之前只推出了两个版本,即 Livewire 和 Inertia,好在是被社区大佬及时反应后才在再后来加上了最原始的

    26610

    Laravel Validation 表单验证(一、快速验证)

    关于数组数据的注意实现 如果你的 HTTP 请求包含一个 「嵌套」 参数(即数组),那你可以在验证规则中通过 「点」 语法来指定这些参数: $request->validate([ 'title...正如前面所提到的,Laravel 会自动把用户重定向到之前的位置。另外,所有的验证错误信息会被自动 存储到 session。 重申一次,我们不必在 GET 路由中将错误消息显式绑定到视图。...关于可选字段的注意事项 默认情况下,在 Laravel 应用的全局中间件堆栈 App\Http\Kernel 类中包含了 TrimStrings 和 ConvertEmptyStringsToNull...当我们对 AJAX 的请求中使用 validate 方法时,Laravel 并不会生成一个重定向响应,而是会生成一个包含所有验证错误信息的 JSON 响应。...这个 JSON 响应会包含一个 HTTP 状态码 422 被发送出去。

    3.8K10

    REST-assured 实现 GET, POST, PUT, PATCH, DELETE 请求

    本文中将展示如何使用 REST Assured 框架发送 API 请求。例子中包含了 GET,POST,PUT,PATCH 和 DELETE 格式的请求。...一、REST Assured API 请求 创建一个 maven 项目 rest-assured-examples,并在 pom.xml 中添加 REST Assured 和 Junit 的依赖,如下代码所示...在 test 包下创建一个 RestAssuredGetRequest 类,用来发送不带参数 GET 请求,代码如下: import io.restassured.RestAssured; import...执行测试,控制台显示结果如下: POST 请求 POST 格式请求常用于往服务端发送数据或者创建一个资源。 在 REST Assured 中发送一个 POST 请求,这里使用 post() 方法。...REST Assured 中发送 PUT 格式请求需要使用 put() 方法。

    1.1K30

    『数据密集型应用系统设计』读书笔记(四)

    JSON、XML JSON、XML 和 CSV 属于文本格式,因此具有人类可读性。除了表面的语法问题之外,它们也存在一些微妙的问题: 数值的编码多有歧义之处。...JSON、XML 和 CSV 对很多需求来说已经足够好了,特别是作为数据交换格式来说。...服务中的数据流: REST 与 RPC 有两种流行的 Web 服务方法: REST 和 SOAP。他们在哲学方面几乎是截然相反的。 REST 不是一个协议,而是一个基于 HTTP 原则的设计哲学。...根据 REST 原则设计的 API 称为 RESTful。 相比之下,SOAP 是用于制作网络 API 请求的基于 XML 的协议。...使用二进制编码格式的自定义 RPC 协议可以实现比通用的 JSON over REST 更好的性能。但是,RESTful API 还有其他一些显著的优点: 方便实验和调试。

    1.2K50

    微服务架构中的进程间通信

    在基于线程的应用程序中,请求的线程甚至可能在等待时阻塞。 通知(a.k.a.单向请求) - 客户端向服务器发送请求,但不预期或发送回复。...请求/异步响应 - 客户端向服务发送请求,服务异步回复。客户端在等待时不阻塞,并被设计为假设响应可能不会在一段时间内到达。...当然,JSON是人性化和浏览器友好的。 Thrift还为您提供了包括原始TCP和HTTP在内的传输协议选择。原始TCP可能比HTTP更有效率。然而,HTTP是防火墙,浏览器和人性化的。...随着时间的推移,开发者社区已经意识到JSON还需要一个类似的机制。一个选择是使用JSON Schema,独立或作为IDL的一部分,如Swagger。...在设计您的服务如何通信时,您需要考虑各种问题:服务如何交互,如何为每个服务指定API,如何发展API以及如何处理部分故障。微服务器可以使用两种IPC机制,异步消息传递和同步请求/响应。

    2.5K50

    ⚡REST 和 SOAP 协议有什么区别?

    ### **在 REST 之前的 SOAP**SOAP 出现在 REST 之前。REST 的设计旨在解决 SOAP 的一些问题。...REST 的目标是轻量级、与浏览器高度兼容、将客户端与服务器分离并提供缓存功能。那么,如果 REST 出现在 SOAP 之后,并且 REST 解决了 SOAP 的问题,为什么 SOAP 还存在呢?...在发送请求时,你会向资源传递一个与 CRUD(创建、读取、更新和删除)操作相对应的方法。将方法视为对资源采取的 “操作”,例如创建、更新或删除资源。...### 支持 JSON 消息格式REST 使用 JSON 作为数据格式有几个优点:* **浏览器兼容性**:JSON 作为一种数据格式,与浏览器非常兼容,对浏览器更友好。...请求会被发送到一个处理检索的过程(GetPet 函数)。* 参数: * REST - 宠物 ID 作为路径参数传递给端点 URL。

    15100

    3、进程间通信

    在基于线程的应用程序中,发出请求的线程可能在等待时发生阻塞。 通知(又称为单向请求) 客户端向服务发送请求,但不要求响应。 请求/异步响应 客户端向服务发送请求,服务异步响应。...引用 REST 创建者 Roy Fielding: “REST 提供了一套架构约束,当应用作为整体时,其强调组件交互的可扩展性、接口的通用性、组件的独立部署以及中间组件,以减少交互延迟、实施安全性和封装传统系统...当然,JSON 是人性化和浏览器友好的。Thrift 还为您提供了包括原始 TCP 和 HTTP 在内的传输协议选择。原始 TCP 可能比 HTTP 更有效率。...随着时间的推移,开发人员社区已经意识到 JSON 也需要一个类似的机制。一个选择是使用 JSON Schema,无论独立或作为 IDL 的一部分,如 Swagger。...在设计服务如何进行通信时,您需要考虑各种问题:服务如何交互、如何为每个服务指定 API、如何演变 API 以及如何处理局部故障。微服务可以使用两种 IPC 机制:异步消息传递和同步请求/响应。

    1.3K20

    推荐 Laravel API 项目必须使用的 8 个扩展包

    如今在现代网络开发中,比较流行的模式是基于 API 开发,可以通过手机或网站来创建服务。 Laravel 是创建基于 API 的项目的最佳框架之一,它为世界各地的大型社区提供了高速开发。...Laravel 内置的项目包括 Composer,允许您添加一些包,使开发更快。 当您决定启动新的基于 API 的项目时,以下几个有用的软件包必须安装。 1....Tymondesign/jwt-auth 认证是一个验证你是谁的过程,在登录过程后确认用户身份。为了简单起见,你应该使用 JWT 作为认证过程的标准方法。...当你需要在两方之间转移数据时,JWT (JSON Web Token) 是紧凑的,URL安全的代表, 这里 是 JWT 在 laravel 中流行的扩展包. 3....Spatie/laravel-fractal 对于一个基于 API 的项目来说,最重要的事情就是 API 响应数据的输出。Laravel 采用 Eloquent 来输出 json 或数据格式的数据。

    2.8K10

    JSON Web Token(JWT)教程:一个基于Laravel和AngularJS的例子

    目前,API的认证问题最有名的解决方案是OAuth 2.0和JSON Web Token(JWT)。...通过使用URI或URN命名避免发送者和接收方不属于封闭网络时 JWT中的命名冲突。...有关此过程的任何问题,请参阅官方Laravel文档。 在我们创建了基本的Laravel 5应用程序之后,我们需要设置我们的Homestead.yaml,它将为我们的本地环境配置文件夹映射和域配置。...从API子域中获取限制资源(跨域问题) 在下面JSON web token实例中,我们将采用不同的token验证方法。不同于使用jwt-auth中间件,我们将手动处理异常。...subdomain with restricted access.']; }); }); AngularJS前端示例 我们使用AngularJS作为前端,依赖Laravel后端身份验证服务器的API

    30.6K10

    API 安全测试的 31 个 Tips

    TIP1 旧的API版本通常会包含更多的安全漏洞,他们缺乏一些安全机制。我们可以使用REST API的一些特征来预测是否存在旧的API版本。...只需要发送一个管道作为第一个字符,然后发送一个shell命令(通过设计的命令注入) TIP5 SSRF漏洞 内部端口探查 利用云服务 使用http://webhook.com显示IP地址和HTTP库 下载大文件...TIP8 在测试api的时候,虽然REST API是当前最常见API形式,但是我们也还检查一下API是否也支持SOAP。...TIP22 api从设计上倾向于泄漏PII。BE工程师返回原始JSON对象,并依赖FE工程师过滤敏感数据。发现敏感资源(如收据)?...然后,当输入到数据获取组件时,使用JSON而不是字符串(e。g:它扁平化了JSON) TIP27 BE服务器不再负责保护XSS攻击。api不返回HTML,而是返回JSON。

    1.7K30

    API接口架构REST vs GraphQL

    然后一个 REST API 就完成了 GET/api/articles,它以 JSON 数组的形式返回所需的数据,如下例所示: // GET /articles [ { "id": 1, "title"...比如laravel,express,django,springboot 等,它们都提供了非常方便的方法来实现 REST 接口。...但不幸的是,由于/api/articles 接口是固定的,所以移动端的 description 在调用 API 时仍然会收到该字段。...这些冗余数据在频繁调用和发送大量数据的时候会造成服务器的资源浪费。 嵌套数据 有些时候我们通过一个接口要返回更多的数据的时候,我们就会使用嵌套数据。 例如,我们可能需要一个带有嵌套评论的文章。...REST 通过提供多个版本来处理这个问题,这对于 API 开发人员来说是很麻烦的。 使用 GraphQL,可以从模式中删除不推荐使用的字段,而不会影响现有查询。

    1.6K30
    领券