android-app icon indicating copy to clipboard operation
android-app copied to clipboard

auth requirements

Open sbinet opened this issue 1 year ago • 3 comments

hi there,

I am implementing a wallabag compatible server (here: sako). It's working rather well (if I may say so myself), and the wallabag web extension works well when directed at the sako based endpoint.

when trying to use the android-app, I have had to inject mysterious strings inside the HTML landing page:

  • https://git.sr.ht/~sbinet/sako/commit/3253f8b20458b491775cd9896bb6a16d9e1d8159

(could this be documented somewhere ? I was a bit surprised by this mix of scraping HTML and using the REST API)

with that "hack", I could make android-app properly (or seemingly) authenticate with my sako server, retrieve articles into the android-app cache, and generally use that app. however, it seems renewing the credentials doesn't work even though it does seem to work for the wallabag extension + sako (where I believe I did correctly implement the /oauth endpoint).

so, here is my question: how is the renewal of credentials supposed to work, and what sako needs to provide for android-app to work properly ?

sbinet avatar Dec 04 '24 09:12 sbinet

Did you check https://github.com/di72nn/wallabag-api-wrapper? Do you already know of https://github.com/wallabag/wallabag/issues/2800?

Strubbl avatar Dec 04 '24 09:12 Strubbl

I cannot remember correctly, but the HTML strings being searched for during connection test in the app via https://github.com/wallabag/android-app/blob/master/app/src/main/java/fr/gaulupeau/apps/Poche/network/WallabagWebService.java were introduced, because in past there was no API endpoint to detect if we are at a wallabag instance with a given URL.

Strubbl avatar Dec 04 '24 09:12 Strubbl

thanks for the api-wrapper pointer. I am very naive when comes to java. I managed to compile the project (./gradlew build). how would I run a modified api-wrapper-examples/src/main/java/wallabag/Main.java ?

sbinet avatar Dec 04 '24 15:12 sbinet