Я строю Rails API, который взаимодействует с различными клиентами платформы. На стороне сервера есть реализуются Феи сервера что-то вроде:RAILS Faye - аутентификация токена
Faye::RackAdapter.new(:mount => '/faye', :timeout => 25)
На стороне сервера я хотел бы добавить autentication с помощью маркеров. Я использую расширение faye:
class ServerAuth
def incoming(message, callback)
# Let non-subscribe messages throughs
unless message['channel'] == '/meta/subscribe'
return callback.call(message)
end
# Get subscribed channel and auth token
msg_token = message['ext'] && message['ext']['authToken']
# Add an error if the tokens don't match
if msg_token != '12345'
message['error'] = 'Invalid subscription auth token'
end
# Call the server back now we're done
callback.call(message)
end
end
На самом деле это не работает, как я, кроме. Когда клиент передает правильный токен, все кажется, что все в порядке, но когда он передает недействительный токен, он все же способен нажимать сообщения даже на то, что он возвращает сообщение об ошибке с сервера. Как заблокировать такие сообщения, которые клиенты не смогут их восстановить (очевидно, на стороне сервера).