-
Notifications
You must be signed in to change notification settings - Fork 0
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
Make sure I've got the hostURL right #4
Comments
"preferred storage location." might be the term (see https://gitter.im/solid/app-development) |
jeff-zucker"I think that "preferred storage location" is good; "where in your pod do you want app data for this app stored" if you want something more explanatory. You could also try looking in the profile for a triple like <#me> pim:storage <some_container>, and if not found, ask the user. That triple isn't guaranteed to be there but it often is. Also many apps use the publicTypeIndex.ttl to store app location data. That also isn't guaranteed to be there but often is." "You get the WebID returned from the login so you don't need to ask the user for it ... I think you should ask in the forum about the general approach - I've given you the strict spec view but others may have more flexible solutions. Look at Noel de Martin's software - he does a bunch of this kind of onbording." |
MacBook-Pro-4:~ chris$ curl https://crspybits.solidcommunity.net/profile/card#me Gives:
|
I don't understand RDF very well yet but I believe your storage is set there. See where it says Try running this code and see if you get your pod URL (technically IRI): |
Thanks, @AJamesPhillips for this!! For me, Of course, this not made easier as I'm not using Javascript. (I'm doing Swift on an iOS mobile client also Swift on a backend server). That said, it would be useful to me to know exactly what Also-- it looks like you are getting a webid from your user prior to the screen you show here: I'm curious about how you got the OIDC provider. Is that something the user also enters before? |
I'm reading through https://www.w3.org/TR/turtle/ and am confused about the use of semi-colon line terminators in #4 (comment). |
Things that have colons are prefixes which are all defined at the top. So where it it says "@Prefix crs: </>." That means whenever you see crs: below, I mean </>. And </> means the root folder of the current host. <> means the current file location. So the full statement is :
In other words, your Pod root is https://crspybits.solidcommunity.net/. |
Parsing the #4 (comment) result with
Output:
Not fully sure how to interpret these results. Should it be the |
Let's see what happens with MacBook-Pro-4:~ chris$ curl https://pod.inrupt.com/crspybits/profile/card#me
|
Running it with the same Swift code, I get:
|
This looks promising! |
This is in reference to the
hostURL
field inSolidCreds
but has implications for my entire auth chain of code for Solid.The conversation here
https://forum.solidproject.org/t/basic-question-about-url-to-use-when-making-a-request/4605/22
revealed that I can't just use the "host" of a URL for a WebID to get the base url to use when making HTTP requests of a Solid Pod. While this works for https://crspybits.inrupt.net/profile/card#me (i.e., the host component of the URL is https://crspybits.inrupt.net/), it does not work for https://pod.inrupt.com/crspybits/profile/card#me where the host is https://pod.inrupt.com.
There are several actions needed here:
In my
iOSSolid
package, it looks like I need to overtly ask the user for this base URL, in addition to asking for the issuer URL. Not sure what terminology should be used.In the current package, I'm not sure about the
Host
header passed in HTTP requests. I'm not sure if this should be this base URL or if it should truly be the host component.I need to run a test of the current package making use of a webid like https://pod.inrupt.com/crspybits/profile/card#me to make sure it works in those cases.
The text was updated successfully, but these errors were encountered: