【发布时间】:2019-05-16 08:25:32
【问题描述】:
我想通过从数据库中获取路径并将原始图像解码为base64来获取图像的内容,以免将图像的真实路径暴露给最终用户。
$user->secret_image = getImage($user->secret_image); // This gets the base64 image of the path passed to it
event(new myEvent($user));
然后我有一个事件向她/他自己广播更新的数据。但问题是它不会将编辑后的数据传递到 jQuery 中的前端。当我在myEvent 中file_put_contents('myevent.txt', json_encode($user)); 时,我看到该文件中的值是正确的并且图像是base64,但我不知道为什么我不能在jQuery 中得到它。请注意,其他数据是正确传递的,我可以在 jQuery 中获取它们,但只有参数没有在那里编辑。
我的事件:
class myEvent implements ShouldBroadcast
{
public $user;
public function __construct($user)
{
$this->user = $user;
}
}
jQuery:
window.Echo.channel('my-channel')
.listen('myEvent', (update) => {
let user = update.user;
$('[name="first_name"]').val(user.first_name);
console.log(user.secret_image);
});
【问题讨论】:
标签: jquery laravel events broadcast