Broadcast Route Return Leere Seite anstelle von Auth Token nach der Authentifizierung ist erfolgreichPhp

PHP-Programmierer chatten hier
Anonymous
 Broadcast Route Return Leere Seite anstelle von Auth Token nach der Authentifizierung ist erfolgreich

Post by Anonymous »

Ich habe von Laravel 8 auf Laravel 12 aktualisiert und Reverb für meine Chat -App installiert. Meine App zeichnet sich nicht zum Kanal ab, der mir diesen Fehler zeigt. "Status

ChatController

Code: Select all

    public function store(StoreMessageRequest $request, Utils $utils)
{

$data = $request->validated();
// Validate multiple files

$userId =  auth("sanctum")->user()->id;
$chatId = $data['chat_id'];
$data["chat_identity"] = $chatId;
$data['user_id'] = $userId;
$data["message_id"] = CommonHelpers::generateCramp("post");
$data["chat_id"] = Chat::where("identity", $data["chat_id"])->first()->id;
$images = $request->file('images');
$chatMessage =  ChatMessage::create($data);

if ($request->hasFile('images')) {
foreach ($images as $key => $chatImage) {
$milliseconds = round(microtime(true) * 1000);
$imageName = 'image_' . $milliseconds . '.' . $chatImage->extension();
$chatImages =  $utils->UploadFile($imageName, $chatImage, "chat_images");

ChatAttachments::create([
"message_id" => $chatMessage->id,
"disk" => "public",
"path" =>  $chatImages["filePath"],
"mime" =>  $chatImage->extension(),
"size" =>  $chatImage->getSize(),
"meta" => null,
]);
}
}

$chatMessage->load('user');
$chatMessages = new \App\Http\Resources\ChatMessage($chatMessage);
$this->sendNewNotificationToOthers($chatMessages);
return $utils->message("success", "Message has been sent successfully...", 200);
}
newmessagesent

Code: Select all

class NewMessageSent implements ShouldBroadcastNow
{
use Dispatchable, InteractsWithSockets, SerializesModels;

/**
* NewMessageSent constructor.
*
* @param ChatMessage $chatMessage
*/
private $chatMessage;

public function __construct(\App\Http\Resources\ChatMessage $chatMessage)
{
$this->chatMessage = $chatMessage;
}

/**
* Get the channels the event should broadcast on.
*
* @return \Illuminate\Broadcasting\Channel|array
*/
public function broadcastOn()
{
$identity = Chat::where("id",  $this->chatMessage->chat_id)->first()->identity;
return new PrivateChannel('chat.' . $identity);
}

/**
* Broadcast's event name
*
* @return string
*/
public function broadcastAs(): string
{
return 'message.sent';
}

/**
* Data sending back to client
*
* @return array
*/
public function broadcastWith(): array
{
return [
'chat_id' => $this->chatMessage->chat_id,
'message' => new \App\Http\Resources\ChatMessage($this->chatMessage)
];
}
}
:

Code: Select all

import Echo from "laravel-echo";
import Pusher from "pusher-js";

window.Pusher = Pusher;
Pusher.logToConsole = true;

window.Echo = new Echo({
broadcaster: "reverb",
key: import.meta.env.VITE_REVERB_APP_KEY,
cluster: import.meta.env.VITE_PUSHER_APP_CLUSTER ?? "mt1",
wsHost: import.meta.env.VITE_REVERB_HOST ?? window.location.hostname,
wsPort: import.meta.env.VITE_REVERB_PORT ?? 80,
wssPort: import.meta.env.VITE_REVERB_PORT ?? 443,
forceTLS: false,
encrypted: false,
authEndpoint: "/api/broadcasting/auth",
enabledTransports: ["ws", "wss"],
auth: {
headers: {
Authorization: `Bearer ${localStorage.getItem("auth_token")}`,
Accept: "application/json",
contentType: "application/json",
},
},
});

/**
* Echo exposes an expressive API for subscribing to channels and listening
* for events that are broadcast by Laravel.  Echo and event broadcasting
* allow your team to quickly build robust real-time web applications.
*/

import './echo';
API.php[/b]

Code: Select all

Broadcast::routes(['middleware' => ['auth:sanctum']]);
JavaScript

Code: Select all

 console.log("starting okay...")
Echo.private(`chat.${chatIdentity}`)
.subscribed(() => {
console.log("✅ Subscribed to chat channel:", `chat.${chatIdentity}`);
})
.listenToAll((event, name) => {
console.log("event", event)
})
.listen(".message.sent", (e) => {
console.log("📩 Dot Event:", e);
})
.error((error) => {
console.error("❌ Subscription error:", error);
});

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post