Adding doorkeeper, adding a REST API

POST /api/statuses                  Params: status (text contents), in_reply_to_id (optional)
GET  /api/statuses/:id
POST /api/statuses/:id/reblog

GET  /api/accounts/:id
GET  /api/accounts/:id/following
GET  /api/accounts/:id/followers
POST /api/accounts/:id/follow
POST /api/accounts/:id/unfollow

POST /api/follows                  Params: uri (e.g. user@domain)

OAuth authentication is currently disabled, but the API can be used with HTTP Auth.
This commit is contained in:
Eugen Rochko
2016-03-07 12:42:33 +01:00
parent 3824c58853
commit ab6696e855
54 changed files with 847 additions and 61 deletions

View File

@ -5,11 +5,12 @@ class FollowService < BaseService
def call(source_account, uri)
target_account = follow_remote_account_service.(uri)
return if target_account.nil?
return nil if target_account.nil?
follow = source_account.follow!(target_account)
send_interaction_service.(follow.stream_entry, target_account)
source_account.ping!(account_url(account, format: 'atom'), [Rails.configuration.x.hub_url])
source_account.ping!(account_url(source_account, format: 'atom'), [Rails.configuration.x.hub_url])
follow
end
private