Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to handle Public Writable Gateways in browser extension? #285

Closed
lidel opened this issue Sep 29, 2017 · 4 comments
Closed

How to handle Public Writable Gateways in browser extension? #285

lidel opened this issue Sep 29, 2017 · 4 comments
Labels
help wanted Seeking public contribution on this issue kind/discussion Topical discussion; usually not changes to codebase

Comments

@lidel
Copy link
Member

lidel commented Sep 29, 2017

Something I've noticed at discuss.ipfs.io:

So, seems that https://www.eternum.io (which http://ipfessay.stavros.io is using) is writable

Loading the site (which utilizes writable gateway) with ipfs-companion is problematic:

  1. http://ipfessay.stavros.io redirects to https://www.eternum.io/ipns/QmSWnBwMKZ28tcgMFdihD8XS7p6QzdRSGf71cCybaETSsU/

  2. ipfs-companion redirects that to my local gateway http://127.0.0.1:8080/ipns/QmSWnBwMKZ28tcgMFdihD8XS7p6QzdRSGf71cCybaETSsU/

  3. Clicking on publish does nothing, because my local gateway is read-only and rejects HTTP PUT:

    2017-09-29-180102_995x29_scrot

Ouch. That is a bad UX.

I see two ways to "fix" it:

(A) Display a popup informing user that request failed because custom gateway is read-only and leave it up to users to either: (A1) decide to make local gateway writable (A2) temporarily disable redirect to custom gateway and use original one
(B) Disable "gateway redirect" for HTTP PUT and POST and always use original gateway for mutable operations.
(C) (suggested in #285 (comment)) Warn the user on startup that the gateway is not writable, so some applications may fail, with instructions on how to make it writable.

Any thoughts?

cc @skorokithakis (ipfessay)

References:

@lidel lidel added the kind/discussion Topical discussion; usually not changes to codebase label Sep 29, 2017
@lidel lidel changed the title How to handle Public Writeble Gateways in browser extension? How to handle Public Writable Gateways in browser extension? Sep 29, 2017
@lidel lidel added the help wanted Seeking public contribution on this issue label Sep 29, 2017
@skorokithakis
Copy link

skorokithakis commented Sep 30, 2017

Another alternative is to warn the user on startup that the gateway is not writable, so some applications may fail, with instructions on how to make it writable.

Also, if the publish button just does nothing, it's also a bug in IPFessay, as we aim to show a pop-up with instructions on getting to a writable gateway. Can you file a bug on IPFessay with steps to reproduce so we can fix it if you aren't getting the pop-up?

@lidel
Copy link
Member Author

lidel commented Sep 30, 2017

Thanks! Filled a bug at: https://gitlab.com/stavros/IPFessay/issues/10 and added (C).
However, I feel (A) may be better solution: it delivers information at the right moment (just-in-time feedback), instead of pushing information to all users without any consideration if/when they really need it.

@lidel lidel added this to Near Future in General Roadmap Oct 2, 2017
@ghost
Copy link

ghost commented Dec 18, 2017

The writable gateway hasn't gotten any love in over 2 years, but although it's not gonna get dropped, I'd rather have a UX scheme for using pinning services. Combined with adding to the embedded js-ipfs node (or an external ipfs node), this gets us closer to nice UX.

The more we can use embedded/external ipfs nodes instead of the gateway, the better.

@lidel
Copy link
Member Author

lidel commented Dec 18, 2017

Indeed. I think the current approach for writable gateways is "good enough". Let's close this.

FYSA if gateway is not writable, IPFessay displays:

@lidel lidel closed this as completed Dec 18, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Seeking public contribution on this issue kind/discussion Topical discussion; usually not changes to codebase
Projects
General Roadmap
Near Future
Development

No branches or pull requests

2 participants