-
Notifications
You must be signed in to change notification settings - Fork 59
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
WIP: Implement HTTP #468
base: master
Are you sure you want to change the base?
WIP: Implement HTTP #468
Conversation
We shouldn't call this "anchor". Anchor has a different meaning in a close enough context that I think this will be confusing. In particular, "anchor" colloquially refers to "anchor tags" in HTML documents, which you can reference within a URL with fragment identifiers
I'm not sure I like this. There are often genuine files that don't have file extensions that are usually plain text files, e.g., My impression is that, (while it's not absolute) the most common convention and default for many web servers and frameworks is to use a trailing slash explicitly to serve directories. |
Hm, yeah, I can see this is potentially confusing, but we're not calling it "anchor" arbitrarily. We're looking for the right analogy to populate the existing
Yeah, this was the other default rule I considered—I think you're right it's probably a more reliable default. That is how the python server works (except for the root, which does not redirect to the slash). Also planning for the method to be overridable so people can configure for their particular servers if it is different. |
So one thing to be aware of is your code assumes no one would ever do
|
@MattOates I guess I was thinking that this just sticks around on that path and any paths derived from it (since we don't mess with netloc) and should "just work." Does it not? Maybe there are just some bugs to clean up (sorry, haven't had a chance to poke at it and confirm/deny).
I think that we could (1) support env vars for basic auth like most of the cloud providers have for auth, (2) point people towards how to set the default client, or (3) recommend an explicit client. |
Does that mean we're going to print out the username and password in plaintext in string representations? |
Initial pass at http.
http.server
http.server
and also looks like it should work for apache and nginx file servers from my googling. (allows user to override this method for their own server).anchor
instead of.cloud_prefix
where appropriate. For cloud providers,.anchor
is the same as.cloud_prefix
(e.g.,s3://
). For http, the anchor should be the serverhttp://example.com
and the.cloud_prefix
should behttp://
. Constructing new paths should use.anchor
Limitations/caveats:
http://example.com/file.txt
) to be a file; if no suffix, assumes dir. This is definitely not true of real-world URLs, but maybe is an ok assumption for anything serving files?Left to do:
https
Closes #455