首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用Laravel处理文本/纯文本请求(通过navigator.sendBeacon发送)

用Laravel处理文本/纯文本请求(通过navigator.sendBeacon发送)
EN

Stack Overflow用户
提问于 2021-02-14 19:24:53
回答 2查看 977关注 0票数 3

问题:

我试图从文本/普通POST请求中获取Laravel 8中的Controller中的content/body

无论是在文档中,还是在谷歌搜索中,都没有效果。

我试过:

代码语言:javascript
复制
$request->input();
$request->all();
$request->json();
json_encode($request);

所有这些似乎都表明请求完全是空的。

上下文

这可能与解决方案无关,但可能会帮助试图搜索此问题的其他人:我试图处理的控制器请求是由navigator.sendBeacon在客户端发送的。请求主体实际上是字符串化的JSON,但是sendBeacon不允许您发送内容类型JSON的请求。Devtools将此请求的内容类型标头显示为“text/平原”。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-02-14 19:24:53

我的答案是:

使用获取文本/普通HTTP请求的内容.

然后,如果您处于类似于我的情况,文本实际上是JSON,那么使用json_decode($request->getContent(),true)从您可以在Controller中使用的内容中获得一个标准的PHP数组。

事实证明,这是相当简单的,但信息没有在文档,或任何在线搜索,所以我认为这将是值得张贴到如此如此.

票数 6
EN

Stack Overflow用户

发布于 2022-05-26 18:58:07

您可以像下面这样以JSON的形式发送数据

代码语言:javascript
复制
data = new Blob([JSON.stringify(data)], {type : 'application/json'})

navigator.sendBeacon('/your/route/here', data)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66199232

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档