从数据库发出请求-Laravel&;PHP
我在函数中从数据库发出请求,但在尝试获取非对象的属性时出现错误从数据库发出请求-Laravel&;PHP,php,laravel,Php,Laravel,我在函数中从数据库发出请求,但在尝试获取非对象的属性时出现错误。但是我的代码没有任何错误,因为它返回了错误 >>trying to get property of non-object. 控制器 public function shopHook(Request $request) { $shop = $request->getContent(); $shop = json_decode($shop, true);
。但是我的代码没有任何错误,因为它返回了错误
>>trying to get property of non-object.
控制器
public function shopHook(Request $request)
{
$shop = $request->getContent();
$shop = json_decode($shop, true);
$shop_id = $shop['number'];
$get_msg = ShopCancelled::where('name',Auth::user()->domain)->first();
}
网络路线
Route::post('shop-cancel-webhook', 'AppController@shopHook');
为什么会发生这种情况?密码似乎正在被破解
$get_msg = ShopCancelled::where('name',Auth::user()->domain)->first();
发出请求时,该错误是因为您试图访问未实例化或不具有该属性的对象内的属性。
如果您能准确指出错误所在的行,这将非常有帮助。我认为问题出在这行:
$shop_id = $shop['number'];
请改为尝试$shop\u id=$shop->number代码>似乎Auth::user()
为空。身份验证是否正常工作?请检查在访问域时是否发生错误:Auth::user()->domain
尝试用一些伪字符串替换Auth::user()->domain,以查看错误是否消失。如果在API中请求,则未正确设置身份验证会话。如果我是对的,首先您需要查找有关api的信息auth@Phiter,好的,所以Auth::user()为null,当我在replace中硬编码域时,它工作了。但是为什么它是空的呢?如果你有上面的红色注释,那就是关于auth的Auth::user()
返回null=))