我正在使用Ratchet for websockets。它一般工作,但我想在我的ExampleController Laravels Auth
中使用。它應該很容易,但是,這並不工作:Laravel 5.2 and Ratchet Class not found
<?php namespace Annotation\Http\Controllers;
use Auth;
use Ratchet\MessageComponentInterface;
use Ratchet\ConnectionInterface;
class ExampleController extends Controller implements MessageComponentInterface {
public function onOpen(ConnectionInterface $conn) {
echo Auth::id();
//etc.
echo "New Connection! ({$conn->resourceId})";
}
}
我總是得到一個Auth
類未發現異常,當我初始化我在WebSocket的-server.php(位於laravel的根目錄)控制器以下文件:
<?php
require __DIR__.'/vendor/autoload.php';
use Ratchet\Server\IoServer;
use Annotation\Http\Controllers\CollaborativeController;
$server = IoServer::factory(
new ExampleController(),
8080
);
$server->run();
如果用我ExampleController與路由通常控制器的驗證類會被發現。 (我也無法使用auth幫手或與laravel相關的任何東西)
爲什麼會發生這種情況?因爲Laravel還沒有初始化,還是需要添加路徑?
這是行不通的,因爲輔助類和laravels未加載IOC。 – Marco