socialforge/app/api/mobile/api.rb

38 lines
768 B
Ruby
Raw Normal View History

2014-11-27 19:43:04 +08:00
module Mobile
class API < Grape::API
version 'v1', using: :path
format :json
2014-12-03 17:28:19 +08:00
content_type :json, "application/json;charset=UTF-8"
2014-12-10 17:29:39 +08:00
use Mobile::Middleware::ErrorHandler
2014-11-27 19:43:04 +08:00
helpers do
def logger
API.logger
end
2014-12-10 11:56:33 +08:00
def authenticate!
2014-12-14 21:01:23 +08:00
raise 'Unauthorized. Invalid or expired token.' unless current_user
2014-11-27 19:43:04 +08:00
end
def current_user
token = ApiKey.where(access_token: params[:token]).first
if token && !token.expired?
@current_user = User.find(token.user_id)
else
nil
end
end
end
mount Apis::Auth
mount Apis::Users
mount Apis::Courses
2014-12-10 16:23:56 +08:00
mount Apis::Watches
2014-11-27 19:43:04 +08:00
2014-12-10 15:11:10 +08:00
add_swagger_documentation ({api_version: 'v1', base_path: '/api'})
2014-11-27 19:43:04 +08:00
end
end