ソースを参照

Add public key declaration to actors (#4215)

master
Eugen Rochko 6年前
committed by GitHub
コミット
a47c2e8890
2個のファイルの変更23行の追加0行の削除
  1. +6
    -0
      app/serializers/activitypub/actor_serializer.rb
  2. +17
    -0
      app/serializers/activitypub/public_key_serializer.rb

+ 6
- 0
app/serializers/activitypub/actor_serializer.rb ファイルの表示

@@ -7,6 +7,8 @@ class ActivityPub::ActorSerializer < ActiveModel::Serializer
:inbox, :outbox, :preferred_username,
:name, :summary, :icon, :image

has_one :public_key, serializer: ActivityPub::PublicKeySerializer

def id
account_url(object)
end
@@ -50,4 +52,8 @@ class ActivityPub::ActorSerializer < ActiveModel::Serializer
def image
full_asset_url(object.header.url(:original))
end

def public_key
object
end
end

+ 17
- 0
app/serializers/activitypub/public_key_serializer.rb ファイルの表示

@@ -0,0 +1,17 @@
# frozen_string_literal: true

class ActivityPub::PublicKeySerializer < ActiveModel::Serializer
attributes :id, :owner, :public_key_pem

def id
[ActivityPub::TagManager.instance.uri_for(object), '#main-key'].join
end

def owner
ActivityPub::TagManager.instance.uri_for(object)
end

def public_key_pem
object.public_key
end
end

読み込み中…
キャンセル
保存