如何避免WebSocketHandshakeException:不支持请求的子协议

时间:2016-02-27 13:19:10

标签: heroku playframework websocket http-headers

我在play框架中使用websockets。 我想使用一个子协议,即将标题Sec-WebSocket-Protocol设置为一个协议,jboss / Heroku不支持该协议:

public function findAllAvailable($pickupDate, $returnDate)
{
    $subQueryBuilder = $this->getEntityManager()->createQueryBuilder();
    $subQuery = $subQueryBuilder
        ->select('IDENTITY(rv.carId)')   // see above comment for further explanation about identity
        ->from('AppBundle:Reservation', 'rv')
        ->where(':pickup_date < rv.returnDateTime AND :return_date > rv.pickupDateTime')
        ->setParameters(array(
            'pickup_date' => $pickupDate,
            'return_date' => $returnDate
        ));

    $queryBuilder = $this->getEntityManager()->createQueryBuilder();
    $query = $queryBuilder
        ->select(['car'])
        ->from('AppBundle:Car', 'car')
        ->where($queryBuilder->expr()->notIn('car.id', $subQuery->getQuery()->getDQL() ) )
        ->getQuery()
    ;

    return $query->getResult();
}

我正在实施我在Sec-WebSocket-Protocol中指定的协议,因此服务器应该接受子协议。 在我到达代码中的第一个断点之前,我遇到了这个错误。 我可以配置jboss / Heroku来接受给定的子协议吗? 如果是这样 - 怎么样?

谢谢, -Louise

0 个答案:

没有答案