我正在通过该GET方法传递评论,其中包含特殊字符,包括?. 我在路线中使用以下代码。
Route::get('CustRequest/{id}/{comment}', 'ApprovalController@CustomerRequest')->where('comment', '(.*)');
它适用于除 . 之外的其他特殊字符?。
我正在通过该GET方法传递评论,其中包含特殊字符,包括?. 我在路线中使用以下代码。
Route::get('CustRequest/{id}/{comment}', 'ApprovalController@CustomerRequest')->where('comment', '(.*)');
它适用于除 . 之外的其他特殊字符?。
您应该?将 URL更改%3F为对问号 (?) 进行 URL 编码的 URL。
问号是URI 通用语法的一部分,它由五个组件的分层序列组成:
URI = scheme:[//authority]path[?query][#fragment]
问号是分隔路径和查询字符串的通用语法,您不能更改该语法。因此,必须?将 URL更改%3F为。
路径中的长文本不是最佳实践,您应该将路径中的注释更改为查询字符串,一个示例domain/custrequest/id/?comment=blabla+http://dom.main/?ex=sss并从控制器获取它,因为request()->comment 您可以?在第一个问号之后获取数据。
另一个参考:什么是 URL 中的问号