Page Menu
Home
Phorge
Search
Configure Global Search
Log In
Files
F33101679
web_finger_controller.ex
No One
Temporary
Actions
Download File
Edit File
Delete File
View Transforms
Subscribe
Award Token
Flag For Later
Size
1 KB
Referenced Files
None
Subscribers
None
web_finger_controller.ex
View Options
# Pleroma: A lightweight social networking server
# Copyright © 2017-2022 Pleroma Authors <https://pleroma.social/>
# SPDX-License-Identifier: AGPL-3.0-only
defmodule
Pleroma.Web.WebFinger.WebFingerController
do
use
Pleroma.Web
,
:controller
alias
Pleroma.Web.WebFinger
plug
(
Pleroma.Web.Plugs.SetFormatPlug
)
plug
(
Pleroma.Web.Plugs.FederatingPlug
)
def
host_meta
(
conn
,
_params
)
do
xml
=
WebFinger
.
host_meta
()
conn
|>
put_resp_content_type
(
"application/xrd+xml"
)
|>
send_resp
(
200
,
xml
)
end
def
webfinger
(%{
assigns
:
%{
format
:
format
}}
=
conn
,
%{
"resource"
=>
resource
})
when
format
in
[
"xml"
,
"xrd+xml"
]
do
with
{
:ok
,
response
}
<-
WebFinger
.
webfinger
(
resource
,
"XML"
)
do
conn
|>
put_resp_content_type
(
"application/xrd+xml"
)
|>
send_resp
(
200
,
response
)
else
_e
->
send_resp
(
conn
,
404
,
"Couldn't find user"
)
end
end
def
webfinger
(%{
assigns
:
%{
format
:
format
}}
=
conn
,
%{
"resource"
=>
resource
})
when
format
in
[
"jrd"
,
"json"
,
"jrd+json"
]
do
with
{
:ok
,
response
}
<-
WebFinger
.
webfinger
(
resource
,
"JSON"
)
do
json
(
conn
,
response
)
else
_e
->
conn
|>
put_status
(
404
)
|>
json
(
"Couldn't find user"
)
end
end
def
webfinger
(
conn
,
_params
),
do
:
send_resp
(
conn
,
400
,
"Bad Request"
)
end
File Metadata
Details
Attached
Mime Type
text/x-ruby
Expires
Tue, Jan 20, 12:45 PM (1 d, 17 h)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
973583
Default Alt Text
web_finger_controller.ex (1 KB)
Attached To
Mode
rPUBE pleroma-upstream
Attached
Detach File
Event Timeline
Log In to Comment