首页
学习
活动
专区
工具
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.3K20

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

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

29.9K20

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 数据,还可以通过

7.6K30

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中正确处理和处理异常非常重要。

6.8K31

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.1K50

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

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

3.7K10

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,好在是被社区大佬及时反应后才再后来加上了最原始

16510

REST 和 SOAP 协议有什么区别?

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

7100

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

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

2.4K50

Laravel6.0.4中将添加计划任务事件的方法步骤

此版本包括计划任务事件、新的 JSON 断言方法和所有最新更改。...让我们来看看这个版本中的一些亮点新特性: 首先, TestResponse 类中添加了一个 assertJsonPath() 断言,对于 JSON 响应中使用针对嵌套属性的点符号断言值,这个断言非常方便...(#29987) 修复 修复了 __() 和 null 参数 (#29967) 修复了自定义数据透视模型上修改 updated_at 列的问题 (#29970) 修复了 Illuminate\Redis...列创建没有可选精度的问题 (#29873) 修复了具有特定文件名的多路径迁移文件 (#29996) 修复了测试中向 allowed 异常添加 NotFoundHttpException 的问题(#29975...) 仅当语言环境有条件地存在,才 pendingmail 中设置语言环境 (dd1e0a6) 改进了从根目录生成类按字母顺序对导入进行排序 (#29951) 重构 根目录中将导入更改为 Alpha

1.7K21

3、进程间通信

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

1.3K20

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.6K30

如何使用模拟框架测试微服务? | 微服务系列第八篇

一、了解创建集成测试中的问题 作为开发人员尝试创建集成测试,会遇到许多复杂问题。出现的两个最常见的问题包括与: 不可靠或不可用的外部系统集成 与尚未实现的服务集成。...开发微服务测试的另一个常见问题是每个单元测试通常会检查许多相同的条件,例如REST方法调用的返回值,或现有对象的最终状态。...when方法定义了触发REST API所需的一些初始信息,例如端点和一些参数以及标头值。 then方法标识REST调用输出中的期望值。...模拟以speaker作为有效载荷返回JSON数据。 要准备客户端以接收JSON数据,必须声明Content-Type HTTP标头。 JSON数据由名为sessions的预先存在的属性提供。...使用此属性将数据传递到withBody()方法,以便将此数据作为HTTP正文内容发送。 ? 使用REST Assured实施测试。 要调用REST端点,请使用REST Assured API

3.5K20

推荐 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

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
领券