Laravel /broadcasting/auth returns (302 found) and redirects to login page
I have a custom user AppModelsClient
for which I want to broadcast notifications, Pusher works fine with public channels in my app but I can't get it to work with private channels.
So the problem is: /broadcasting/auth
can't really authenticate the current user.
AppProvidersBroadcastServiceProvider.php
:
public function boot()
{
Broadcast::routes(['middleware' => ['auth:client']]);
Broadcast::channel('App.Models.Client.{id}', function ($user, $id) {
return true;
});
}
bootstrap.js
:
window.Pusher = require('pusher-js');
import Echo from "laravel-echo";
Pusher.logToConsole = true;
window.Echo = new Echo({
broadcaster: 'pusher',
key: '***********',
cluster: 'us2',
encrypted: true,
//auth: {
// headers: {
// 'X-CSRF-TOKEN': token.content // already set in the request by axios
// }
//},
});
if (Laravel.clientId) {
window.Echo.private(`App.Models.Client.${Laravel.clientId}`)
.notification((notification) => {
console.log(notification);
});
}
I'm using the normal Laravel session, so no auth:api
middleware or Authorization
header needed. the X-CSRF-TOKEN
is included with the request.
/broadcasting/auth
request/response screenshot here
Any help would be much appreciated!
laravel-5 pusher
add a comment |
I have a custom user AppModelsClient
for which I want to broadcast notifications, Pusher works fine with public channels in my app but I can't get it to work with private channels.
So the problem is: /broadcasting/auth
can't really authenticate the current user.
AppProvidersBroadcastServiceProvider.php
:
public function boot()
{
Broadcast::routes(['middleware' => ['auth:client']]);
Broadcast::channel('App.Models.Client.{id}', function ($user, $id) {
return true;
});
}
bootstrap.js
:
window.Pusher = require('pusher-js');
import Echo from "laravel-echo";
Pusher.logToConsole = true;
window.Echo = new Echo({
broadcaster: 'pusher',
key: '***********',
cluster: 'us2',
encrypted: true,
//auth: {
// headers: {
// 'X-CSRF-TOKEN': token.content // already set in the request by axios
// }
//},
});
if (Laravel.clientId) {
window.Echo.private(`App.Models.Client.${Laravel.clientId}`)
.notification((notification) => {
console.log(notification);
});
}
I'm using the normal Laravel session, so no auth:api
middleware or Authorization
header needed. the X-CSRF-TOKEN
is included with the request.
/broadcasting/auth
request/response screenshot here
Any help would be much appreciated!
laravel-5 pusher
I'm having a similar problem. Did you ever get it resolved?
– Ryan
yesterday
@Ryan After a long time of pulling my hair, I finally found the cause of this issue. I was using a package for Authentication/Authorization called cartalyst/sentinel which is great except that once installed it will entirely replace the Laravel default auth behavior. So any request to broadcasting/auth is actually rejected.
– Mostafa Attia
17 hours ago
add a comment |
I have a custom user AppModelsClient
for which I want to broadcast notifications, Pusher works fine with public channels in my app but I can't get it to work with private channels.
So the problem is: /broadcasting/auth
can't really authenticate the current user.
AppProvidersBroadcastServiceProvider.php
:
public function boot()
{
Broadcast::routes(['middleware' => ['auth:client']]);
Broadcast::channel('App.Models.Client.{id}', function ($user, $id) {
return true;
});
}
bootstrap.js
:
window.Pusher = require('pusher-js');
import Echo from "laravel-echo";
Pusher.logToConsole = true;
window.Echo = new Echo({
broadcaster: 'pusher',
key: '***********',
cluster: 'us2',
encrypted: true,
//auth: {
// headers: {
// 'X-CSRF-TOKEN': token.content // already set in the request by axios
// }
//},
});
if (Laravel.clientId) {
window.Echo.private(`App.Models.Client.${Laravel.clientId}`)
.notification((notification) => {
console.log(notification);
});
}
I'm using the normal Laravel session, so no auth:api
middleware or Authorization
header needed. the X-CSRF-TOKEN
is included with the request.
/broadcasting/auth
request/response screenshot here
Any help would be much appreciated!
laravel-5 pusher
I have a custom user AppModelsClient
for which I want to broadcast notifications, Pusher works fine with public channels in my app but I can't get it to work with private channels.
So the problem is: /broadcasting/auth
can't really authenticate the current user.
AppProvidersBroadcastServiceProvider.php
:
public function boot()
{
Broadcast::routes(['middleware' => ['auth:client']]);
Broadcast::channel('App.Models.Client.{id}', function ($user, $id) {
return true;
});
}
bootstrap.js
:
window.Pusher = require('pusher-js');
import Echo from "laravel-echo";
Pusher.logToConsole = true;
window.Echo = new Echo({
broadcaster: 'pusher',
key: '***********',
cluster: 'us2',
encrypted: true,
//auth: {
// headers: {
// 'X-CSRF-TOKEN': token.content // already set in the request by axios
// }
//},
});
if (Laravel.clientId) {
window.Echo.private(`App.Models.Client.${Laravel.clientId}`)
.notification((notification) => {
console.log(notification);
});
}
I'm using the normal Laravel session, so no auth:api
middleware or Authorization
header needed. the X-CSRF-TOKEN
is included with the request.
/broadcasting/auth
request/response screenshot here
Any help would be much appreciated!
laravel-5 pusher
laravel-5 pusher
asked Nov 19 '18 at 6:15
Mostafa AttiaMostafa Attia
878
878
I'm having a similar problem. Did you ever get it resolved?
– Ryan
yesterday
@Ryan After a long time of pulling my hair, I finally found the cause of this issue. I was using a package for Authentication/Authorization called cartalyst/sentinel which is great except that once installed it will entirely replace the Laravel default auth behavior. So any request to broadcasting/auth is actually rejected.
– Mostafa Attia
17 hours ago
add a comment |
I'm having a similar problem. Did you ever get it resolved?
– Ryan
yesterday
@Ryan After a long time of pulling my hair, I finally found the cause of this issue. I was using a package for Authentication/Authorization called cartalyst/sentinel which is great except that once installed it will entirely replace the Laravel default auth behavior. So any request to broadcasting/auth is actually rejected.
– Mostafa Attia
17 hours ago
I'm having a similar problem. Did you ever get it resolved?
– Ryan
yesterday
I'm having a similar problem. Did you ever get it resolved?
– Ryan
yesterday
@Ryan After a long time of pulling my hair, I finally found the cause of this issue. I was using a package for Authentication/Authorization called cartalyst/sentinel which is great except that once installed it will entirely replace the Laravel default auth behavior. So any request to broadcasting/auth is actually rejected.
– Mostafa Attia
17 hours ago
@Ryan After a long time of pulling my hair, I finally found the cause of this issue. I was using a package for Authentication/Authorization called cartalyst/sentinel which is great except that once installed it will entirely replace the Laravel default auth behavior. So any request to broadcasting/auth is actually rejected.
– Mostafa Attia
17 hours ago
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53369227%2flaravel-broadcasting-auth-returns-302-found-and-redirects-to-login-page%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53369227%2flaravel-broadcasting-auth-returns-302-found-and-redirects-to-login-page%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
I'm having a similar problem. Did you ever get it resolved?
– Ryan
yesterday
@Ryan After a long time of pulling my hair, I finally found the cause of this issue. I was using a package for Authentication/Authorization called cartalyst/sentinel which is great except that once installed it will entirely replace the Laravel default auth behavior. So any request to broadcasting/auth is actually rejected.
– Mostafa Attia
17 hours ago