hello! im developing lemmy client (on html5). i tried to do login function but… when i try to fetch /v3/user backend with auth-token it give me error:
{
"error": "no_id_given"
}
but why? what im doing wrong? if you want here is my source file on github ( function: getLoggined() )
To get the current logged-in user’s details, that’s actually retrieved from
/api/v3/site
for…reasons, I guess?Your function can remain the same, but change the api endpoint to
/site
Also, the user details will be in themy_user
key from get site response.Is there a reason you’re not using the lemmy-js-client? That will take care of a lot of the low-level fetching for you (and has TypeDocs which help you to know what response / form data is needed).
Your Original Function, Slightly Modified
async function getLoggined() { try { const response = await fetch(`${api}/site`, { method: "GET", headers: { "Content-Type": "application/json", "Authorization": `Bearer ${lemmyToken}` } }); alert(`Bearer ${lemmyToken}`); alert(await response.text()); const data = await response.json(); return data.my_user; } catch (error) { alert(`error while loading profile: ${error}`); } }
thanks! it works!
i didnt use lemmy-js-client because i dont know how to install it in github pages…
/api/v3/user
is for fetching info about any user, it requires either aperson_id
orusername
to be given as a URL param to work, e.g.https://feddit.uk/api/v3/user?person_id=28426
will get my profile. There currently isn’t a way to get just theperson_view
from the JWT, though API v4 will have an/account
endpoint that you’ll be able toGET
with the auth header. Most appsGET
the/site
endpoint and usemy_user
returned from that.