Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

agnos.is Forums

  1. Home
  2. Fediverse
  3. Recommend object URL should 301 to AP resource

Recommend object URL should 301 to AP resource

Scheduled Pinned Locked Moved Fediverse
activitypubghostdiscourse
15 Posts 6 Posters 21 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • julian@community.nodebb.orgJ This user is from outside of this forum
    julian@community.nodebb.orgJ This user is from outside of this forum
    [email protected]
    wrote on last edited by
    #1

    Wanted to start a convo with @[email protected] from Ghost and @[email protected] from Discourse about AP resource discovery.

    A common use case from fediverse users is to be linked out to a site, and attempt to "bring it in" to their local instance/app of choice. This is done by taking the browser URL and pasting it into their site/app's search bar, or equivalent.

    For example:

    • Ghost: https://activitypub.ghost.org/warp-factor-5-mr-sulu/
    • Discourse: any forum topic

    For context, last night I discovered that Ghost's latest blog post didn't make it into NodeBB, due to a bug on my end. I attempted to resolve it via URL but there was no AP resource at that URL. I ended up having to query the instance actor (which I happened to already know), and looking at the outbox.

    To my knowledge there is no way to find a Discourse post or topic's AP resource ID without having a local Discourse account.

    Would it be possible for you to send back an HTTP 301 Moved Permanently (or similar) if the Accepts header contains one of the AP-related types?

    N.B. This probably has some overlap with @[email protected]'s HTTP Discovery Task Force, a 308 is recommended there.

    1 Reply Last reply
    0
    • trwnh@mastodon.socialT This user is from outside of this forum
      trwnh@mastodon.socialT This user is from outside of this forum
      [email protected]
      wrote on last edited by
      #2

      @julian @johnonolan @angus @evan 301/308 aren’t cacheable/idempotent over the Accept header and are meant to permanently update old identifiers. consider 303 See Other for content negotiation purposes, or consider rel=alternate type=… Link headers otherwise.

      evan@cosocial.caE 1 Reply Last reply
      0
      • evan@cosocial.caE This user is from outside of this forum
        evan@cosocial.caE This user is from outside of this forum
        [email protected]
        wrote on last edited by
        #3

        @julian @johnonolan @angus there's a whole task force for this. You've commented on it. Why does this need to be discussed?

        julian@community.nodebb.orgJ 1 Reply Last reply
        0
        • trwnh@mastodon.socialT [email protected]

          @julian @johnonolan @angus @evan 301/308 aren’t cacheable/idempotent over the Accept header and are meant to permanently update old identifiers. consider 303 See Other for content negotiation purposes, or consider rel=alternate type=… Link headers otherwise.

          evan@cosocial.caE This user is from outside of this forum
          evan@cosocial.caE This user is from outside of this forum
          [email protected]
          wrote on last edited by
          #4

          @trwnh @julian @johnonolan @angus there's a doc for this.

          1 Reply Last reply
          0
          • evan@cosocial.caE [email protected]

            @julian @johnonolan @angus there's a whole task force for this. You've commented on it. Why does this need to be discussed?

            julian@community.nodebb.orgJ This user is from outside of this forum
            julian@community.nodebb.orgJ This user is from outside of this forum
            [email protected]
            wrote on last edited by
            #5

            @[email protected] this was to ask the mentioned parties for Ghost and Discourse to implement.

            I mentioned you to keep you in the loop because task forces achieve nothing without implementors doing the work.

            1 Reply Last reply
            0
            • rimu@piefed.socialR This user is from outside of this forum
              rimu@piefed.socialR This user is from outside of this forum
              [email protected]
              wrote on last edited by
              #6

              Object IDs should really be retrievable by http GET. See section 3.2 of https://www.w3.org/TR/activitypub

              julian@community.nodebb.orgJ 1 Reply Last reply
              0
              • rimu@piefed.socialR [email protected]

                Object IDs should really be retrievable by http GET. See section 3.2 of https://www.w3.org/TR/activitypub

                julian@community.nodebb.orgJ This user is from outside of this forum
                julian@community.nodebb.orgJ This user is from outside of this forum
                [email protected]
                wrote on last edited by
                #7

                @[email protected] yes, that's right. I'm specifically referring to object urls though, which tend to be more user facing.

                1 Reply Last reply
                0
                • silverpill@mitra.socialS This user is from outside of this forum
                  silverpill@mitra.socialS This user is from outside of this forum
                  [email protected]
                  wrote on last edited by
                  #8

                  @julian @johnonolan @angus @evan

                  Why 301 and not 302?
                  I am using 302. Probably chose it because everyone else was using it.

                  julian@community.nodebb.orgJ 1 Reply Last reply
                  0
                  • silverpill@mitra.socialS [email protected]

                    @julian @johnonolan @angus @evan

                    Why 301 and not 302?
                    I am using 302. Probably chose it because everyone else was using it.

                    julian@community.nodebb.orgJ This user is from outside of this forum
                    julian@community.nodebb.orgJ This user is from outside of this forum
                    [email protected]
                    wrote on last edited by
                    #9

                    @[email protected] 302/307 is also fine by me. Probably safer from being accidentally cached and may be more appropriate in this situation.

                    1 Reply Last reply
                    0
                    • rimu@piefed.socialR This user is from outside of this forum
                      rimu@piefed.socialR This user is from outside of this forum
                      [email protected]
                      wrote on last edited by
                      #10

                      You could save yourself some hassle and make urls and IDs the same value. But you do you 🙂

                      1 Reply Last reply
                      0
                      • johnonolan@mastodon.xyzJ This user is from outside of this forum
                        johnonolan@mastodon.xyzJ This user is from outside of this forum
                        [email protected]
                        wrote on last edited by
                        #11

                        @julian @angus @evan interesting problem! Redirect feels like a slightly weird pattern to me, intuitively, but open to implementing any preferred approach

                        julian@community.nodebb.orgJ 1 Reply Last reply
                        0
                        • johnonolan@mastodon.xyzJ [email protected]

                          @julian @angus @evan interesting problem! Redirect feels like a slightly weird pattern to me, intuitively, but open to implementing any preferred approach

                          julian@community.nodebb.orgJ This user is from outside of this forum
                          julian@community.nodebb.orgJ This user is from outside of this forum
                          [email protected]
                          wrote on last edited by
                          #12

                          @[email protected] A solution is only needed if the resource id is different from the URL (which in Ghost's case, is true).

                          You don't have to use a redirect. If your software is capable of doing it, you can serve the ActivityPub object directly from that route's controller; that's what NodeBB does.

                          1 Reply Last reply
                          0
                          • johnonolan@mastodon.xyzJ This user is from outside of this forum
                            johnonolan@mastodon.xyzJ This user is from outside of this forum
                            [email protected]
                            wrote on last edited by
                            #13

                            @julian If you want to make an issue here about what you'd like to see I'll make sure the team sees it 🙂

                            https://github.com/TryGhost/ActivityPub

                            johnonolan@mastodon.xyzJ 1 Reply Last reply
                            0
                            • johnonolan@mastodon.xyzJ [email protected]

                              @julian If you want to make an issue here about what you'd like to see I'll make sure the team sees it 🙂

                              https://github.com/TryGhost/ActivityPub

                              johnonolan@mastodon.xyzJ This user is from outside of this forum
                              johnonolan@mastodon.xyzJ This user is from outside of this forum
                              [email protected]
                              wrote on last edited by
                              #14

                              @julian (Thank you for the ping btw, I appreciate the note - this wasn't on my radar)

                              julian@community.nodebb.orgJ 1 Reply Last reply
                              0
                              • johnonolan@mastodon.xyzJ [email protected]

                                @julian (Thank you for the ping btw, I appreciate the note - this wasn't on my radar)

                                julian@community.nodebb.orgJ This user is from outside of this forum
                                julian@community.nodebb.orgJ This user is from outside of this forum
                                [email protected]
                                wrote on last edited by
                                #15

                                @[email protected] no worries, and thanks! Will do.

                                1 Reply Last reply
                                0
                                Reply
                                • Reply as topic
                                Log in to reply
                                • Oldest to Newest
                                • Newest to Oldest
                                • Most Votes


                                • Login

                                • Login or register to search.
                                • First post
                                  Last post
                                0
                                • Categories
                                • Recent
                                • Tags
                                • Popular
                                • World
                                • Users
                                • Groups