Jump to content

Solo Mornington

Resident
  • Posts

    8
  • Joined

  • Last visited

Posts posted by Solo Mornington

  1. Well it turns out it's user error, sort of. 🙂

    You can copy and paste a string into the LSL editor with a null or tab or whatever. I don't know which it was because I saved over it.

    It turns out that this works:

    list parameters = [
      HTTP_ACCEPT, "application/json",
      HTTP_CUSTOM_HEADER, "Authorization", "Basic [hash]"
    ];
    
    • Like 2
  2. Hi.

    I'd really like to use HTTP Basic Authentication to be able to authenticate with a web server using llHTTPRequest(). Read about it here: https://en.wikipedia.org/wiki/Basic_access_authentication It's also RFC 7617: https://tools.ietf.org/html/rfc7617

    The basic auth scheme uses the 'Authorization' header, but it's not the only one. Here's a note on it from Mozilla: https://developer.mozilla.org/en-US/docs/Web/HTTP/Authentication#Authentication_schemes

    The reason this is an issue is because LSL complains if you try to send a HTTP_CUSTOM_HEADER of 'Authorization'.

    Is there any way to get this header unblocked from LSL? Or do I need to write a compatibility layer (meaning: I give up)?

  3. I haven't started using the experience stuff yet, but just looking at the docs for kvp I think it wouldn't be at all scalable (or anything I'd want to pay for) if I couldn't query whether a key exists other than to try to read it with a default value.

    Also it makes sense to query for all the keys and get a paginated result in JSON, so you get back the first 100 or whatever, along with some range data. That way I can poke through it however I want to in one event loop, and you benefit from one query instead of 100. So my script would get data like this:

    {"experience_key": "[exp key]", "range_start": 0, "range_end": 100, "keys": ["key", "key2", "etc"]}

    It would be stale data as soon as you get it, because other scripts can kill keys, but it would be useful.

    From there you could say llReadKeys(

    • , [default value]) which returns a strided list in one event cycle, also with a JSON counterpart which just adds JSON_INVALID for non-existent keys instead of a default.

    I'm only endorsing JSON because LSL doesn't have structured data types. I'll be poking JSON into the KVP if i use it.

    I'd really only want to scope this kind of stuff for an experience.

    For grid-wide services I'd want data stores to be *way* more flexible, and I doubt LL wants to give me that. As long as llHTTPRequest() is free, I'm happy.

    I already have a RESTful API I made for a kiosk system, which I was thinking might be something to try and convert to KVP under experience keys. But we shall see how much free time I have to devote to it.

     

  4. Oskar Linden says: "The second step is to restart the region to a simstate that was before the prims got returned. It is a process that is done by hand. There is no way to automate it."

    Hire me.

    I'll make a way to automate it.

    I'm sure there are about a dozen million other people who could automate a rollback from a *release candidate* software rollout as well.

    Any of those people could also make a few reasonable suggestions about how to write regression tests.

×
×
  • Create New...