IslandzVW / halcyon

InWorldz Halcyon 3d virtual reality world simulator
BSD 3-Clause "New" or "Revised" License
21 stars 26 forks source link

Added additional handlers for PUT and DELETE to llRequestURL and llRquestSecureURL #427

Closed mdickson closed 6 years ago

mdickson commented 6 years ago

Per the SL Wiki the Request URL functionality should work for GET/POST/PUT and DELETE. We were only installing handlers for GET and POST. This corrects that.

appurist commented 6 years ago

We should at some point seek to replace these specific methods with handlers that accept any HTTP method. (There are 8 standard ones defined in RFC 7231, plus PATCH defined in RFC-5789), and many more registered under the HTTP protocol since then. Since the HTTP methods are open-ended (not specific), providing a general-purpose HTTP server function should really mean supporting any method (wildcard). I'd like to see us replace the method-specific handlers (all invoking the same handler anyway) with something that handled wildcard method names. We should probably at least support accepting HEAD, which is one of only two that are required for servers (HEAD and GET). All others are optional.

There are dozens of known registered methods. Supporting four of these (probably the most common 4) is a good incremental improvement, and the change looks good. I'm going to merge it but I'd like us to come back to this in the future with a wildcard approach.

appurist commented 6 years ago

Oh by the way, I think the AppVeyor build that failed actually succeeded but was only unable to upload the resulting artifact to @mdickson branch (which might be expected, not sure).