Jump to content

Search the Community

Showing results for tags 'http'.



More search options

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Forums

  • People Forum
    • Your Avatar
    • Make Friends
    • Lifestyles and Relationships
    • Role Play
    • General Discussion Forum
    • Forums Feedback
    • Missed Connections
    • Second Life Education
  • Places and Events Forum
    • Favorite Destinations
    • Upcoming Events and Activities
    • Games in Second Life
  • Official Contests & Events
    • Leap Into Love Snapshot Contest
  • Creation Forum
    • Fashion
    • Art, Music and Photography
    • Animation Forum
    • Bakes on Mesh
    • Environmental Enhancement Project
    • Machinima Forum
    • Building and Texturing Forum
    • Mesh
    • LSL Scripting
    • LSL Library
    • Experience Tools Forum
    • Sansar for Second Life Residents
  • Technology Forum
    • Second Life Server
    • Second Life Viewer
    • Second Life Web
    • General Second Life Tech Discussion
  • Commerce Forum
    • Merchants
    • Inworld Employment
    • Wanted
  • Land Forum
    • General Discussion
    • Mainland
    • Linden Homes
    • Regions for Sale: Full Private Island
    • Region for Rent: Full Private Island
    • Regions for Sale: Homesteads
    • Region Rentals: Homestead
    • Parcels for Sale: Mainland
    • Parcels for Rent: Mainland
    • Wanted: Full Private Island
    • Wanted: Homesteads
    • Wanted: Mainland
  • International Forum
    • Deutsches Forum
    • Foro en español
    • Forum in italiano
    • Forum français
    • 日本語フォーラム
    • 한국어 포럼
    • Fórum em português
    • Forum polskie
    • المنتدى العربي
    • Türkçe Forum
    • Форум по-русски
  • Adult Content Forum
    • Highlight Upcoming Events
    • General Discussion
    • General Announcements
  • Answers
    • Abuse and Griefing
    • Account
    • Avatar
    • Creation
    • Inventory
    • Getting Started
    • Controls
    • Land
    • Linden Dollars (L$)
    • Shopping
    • Technical
    • Viewers
    • Everything Else
    • International Answers

Blogs

  • Commerce
  • Featured News
  • Inworld
  • Tools and Technology
  • Tips and Tricks
  • Land
  • Community News

Categories

  • English
  • Deutsch
  • Français
  • Español
  • Português
  • 日本語
  • Italiano
  • Pусский
  • Türkçe

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


About Me

Found 8 results

  1. Issue is now resolved - Thank you Hello all, I've searched in a lot of places and can't seem to find an answer. I have an object that makes several HTTP Requests via llHttpRequest, the problem is that every time it does there seems to be some kind of default "particle" animation consisting of white dots (see image). They appear every single time a request gets made, and it occurs when attached to an avatar or rezzed. Only the owner of the object can see their own objects' particles, but I really need to disable them. I have tried: llParticleSystem([]); Any information would be appreciated. Thanks
  2. Now with the new functions that were released onto the Wiki, a lot of my web servers used a Name2Key service(Such as W-Hat, or similar). One problem we were having is some services are not 100% reliable. Every now and then, we had NULL_KEYs returned. These scripts we made; we used as a backup when the online services were not working or did not produce the desired result. This is not meant to be used as an alternative to Name2Key with LSL scripts, it is used for websites that need Name2Key and are looking for a backup to their current Name2Key. This could obviously be expanded and is very basic. I would expand on this to allow multiple in-world servers in case of an outage and make it update to the prim's URLs into a database and not a text file. Server Directory/Structure /Name2Key | | - .htaccess | - index.php Once your directory is set up on your server, here are the files! .httaccess RewriteEngine On RewriteBase / RewriteRule ^(.*)$ index.php?name=$1 [L,QSA] index.php <?php if(!empty($_GET['name'])) { if($_GET['name'] == "update_url") { $fh = fopen("server_url.txt","w"); fwrite($fh,base64_decode($_GET['url'])); fclose($fh); } else { header("Content-Type: text/plain"); $fh = fopen("server_url.txt","r"); $url = fread($fh, filesize("server_url.txt")); fclose($fh); $ch = curl_init($url); curl_setopt_array($ch,array( CURLOPT_RETURNTRANSFER=>TRUE, CURLOPT_POST=>TRUE, CURLOPT_HEADER=>"application/x-www-form-urlencoded", CURLOPT_POSTFIELDS=>base64_encode($_GET['name']) )); $data = curl_exec($ch); curl_close($ch); echo $data; } } Now for the in-world scripts. This is meant to go into a single prim and be left to sit there. Name2Key.lsl string update_url = "http://WebsiteName.com/Name2Key/update_url&url="; string url; key urlRequestId; key selfCheckRequestId; key name_query; key return_key; request_url() { llReleaseURL(url); url = ""; llSetTimerEvent(0.0); urlRequestId = llRequestURL(); } throw_exception(string inputString) { llInstantMessage(llGetOwner(), inputString); llResetScript(); } default { state_entry() { request_url(); } on_rez(integer start_param) { llResetScript(); } changed(integer change) { if (change & CHANGED_OWNER | CHANGED_REGION | CHANGED_REGION_START) llResetScript(); } timer() { selfCheckRequestId = llHTTPRequest(url,[HTTP_METHOD, "GET",HTTP_VERBOSE_THROTTLE, FALSE,HTTP_BODY_MAXLENGTH, 16384],""); } dataserver(key i, string d) { if(i == name_query) { if(d != NULL_KEY) { llHTTPResponse(return_key,200,d); } else { llHTTPResponse(return_key,200,NULL_KEY); } } } http_request(key id, string method, string body) { integer responseStatus = 400; string responseBody = "Unsupported method"; if (method == URL_REQUEST_DENIED) throw_exception("The following error occurred while attempting to get a free URL for this device:\n \n" + body); else if (method == URL_REQUEST_GRANTED) { url = body; llHTTPRequest(update_url+""+llStringToBase64(url),[HTTP_METHOD,"GET",HTTP_VERBOSE_THROTTLE,FALSE],""); llSetTimerEvent(300.0); } else if (method == "GET") { llHTTPResponse(id, 400, "Unsupported Method"); } else if (method == "POST") { body = llBase64ToString(body); name_query = llRequestUserKey(body); return_key = id; } } http_response(key id, integer status, list metaData, string body) { if (id == selfCheckRequestId) { selfCheckRequestId = NULL_KEY; if (status != 200) request_url(); } else if (id == NULL_KEY) throw_exception("Too many HTTP requests too fast!"); } } As I said, this is not a "finished" product, as it still needs some upgrades. We highly recommend that you use it as a backup to other online Name2Key Services when you get a NULL_KEY. Hope this helps out other users!
  3. At the present time there does not seem to be a reasonable method to retrieve In-World Textures from a Secure HTTPS web page. For example, if you try using the URL: https://secondlife.com/app/image/d2773340-b1dd-b030-e9bf-2c2851000283/2 That resolves to the following URL: http://texture-service.agni.lindenlab.com/d2773340-b1dd-b030-e9bf-2c2851000283/320x240.jpg/ But notice that the first part has been changed from https:// to http:// ... GACK! Any secure web page that attempts to include an In-World Texture will trigger a "mixed content" warning in every browser out there. If you try and pre-resolve the second URL but manually stick an https:// on the front, you get an interesting error. (In Chrome it's a Privacy Error because the source is not secure.) Sooooo .. Linden Lab? What are your plans for providing a secure web service for In-World Textures? Can we get something going since it seems Secure Hosting is a nearly free and easily obtained technology these days? In the meantime, does anyone have any hacks or tricks that might get around this issue ... or maybe just sees that I've totally missed some obvious thing. I'd appreciate any help that folks can provide. Thanks in advance.
  4. I'm running into a deadline for an LSL project i want to complete and am looking to get a shortcut from someone i'm sure already knows the answer to. I've used this bounty like scheme in the past and it worked well so i thought i'd try it again. I will revise/delete this post after the bounty has been paid. Needing a solution for: I have a LSL list in script in a HUD i offer for sale. The list is currently about 8KB in size and could grow to as large as 16KB. Example list entries look like ["O019: Fire",<255,70,0>,"R029: Plasa Red",<225,0,60>,"LCyan",<29.07,202.98,234.09>...] I own an off grid server that can be accessed by PHP and MYSQL I'd like to have each customer of a HUD i'm building to be able to "save" this LSL list which would message my PHP/MYSQL server and store this list against the llGetOwner() UUID I'd like to then be able to "restore" this list where my PHP/MYSQL list would then retrieve this list from my PHP/MYSQL server using the UUID as the key and update my LSL list This needs to be as atomic as possible. I'm not ok with breaking the 16KB list into several HTTP requests as it might corrupt the data. It would be much better for the entire save/restore to fail than it would be to have it partially update. It needs to follow basic security standards not allowing special characters like " and ' to break the PHP/MYSQL script. I've done this before using HTTP Get syntax and i'm pretty sure with HTTP GET you can't include sufficient information to allow it to store 16KB of data. I'm suspecting this will require the use of HTTP Put to push the data to my external server. Steps to get paid the bounty Message Stefan Buscaylet and ask what ever questions you have. Agree to that you'll offer full source code that has full royality free license to use in my application and you're welcome to use or sell the code again for your application. Stefan agrees to never publish the source of the code offered. Develop the solution and test yourself Pass Stefan an LSL script with full rights that I can put into a prim that when touched demostrates the storage and retrival of the LSL list upto 16KB in size and includes the code to compare the two lists to ensure they are identical. Stefan may stuff in other UUIDs to demostrate it can store multiple UUIDs Stefan pays 50% of the bounty to your paypal. At which point you pass me the full source code of the PHP and MYSQL code. Stefan pays you the remaining 50% bounty. If you'd prefer to have a trusted 3rd party involved that we can both agree to that is fine also. I promise you i'm not trying to scam anyone. I hope this is a good deal for someone. I suspect someone who has done this before can write this in 2-3 hours. If not lets talk. Thank you for your professional consideration. ---Stefan Buscaylet
  5. We are continuing to update the reliability and stability of the LSL HTTP functionality in LSL. The latest changes involve validating the MIME type values: The HTTP_MIMETYPE parameter to llHTTPRequest is checked. LSL will validate these for proper format; requests that attempt to send an improperly formatted type will send a debug channel error, not send the request, and return a null request key. If you use the new HTTP_ACCEPT option to llHTTPRequest (which allows you to further restrict the type your script expects), the Content-Type of the response is checked to see that it matches your restriction; if it does not, the http_response event will be a 415 error and the body will be "Unsupported or unknown Content-Type". Incoming HTTP requests to a script check to see if the Content-Type in the request is formatted correctly and that it is an allowed type (it always checked for allowed types). Previously, it was possible to send a type that was syntactically invalid but matched an allowed wildcard type. Incoming parameters are not validated. If an incoming request has an improperly formatted or unacceptable MIME type, LSL responds with a 415 error response and no event is generated for the script. Valid MIME type format looks like “type/subtype; parameters” (the semicolon and parameters may be omitted). LSL does not validate the content of the optional parameter section. Testing Your Scripts We have made simulators implementing these checks available; regions where you can test your scripts are listed below. Please do so as soon as possible and make any required changes. Agni regions: Magnum Sandbox 1 Magnum Sandbox 2 Magnum Sandbox 3 Aditi regions: Bonifacio Sandbox Artifex Examples Some examples of valid calls to llHTTPRequest include: key my_key; my_key = llHTTPRequest( “http://www.mywebsite.com/”, [ HTTP_METHOD, “POST”, HTTP_MIMETYPE, “text/plain;charset-utf8” ], “my body” ); key my_key; my_key = llHTTPRequest( “http://www.mywebsite.com/”, [ HTTP_METHOD, “POST”, HTTP_MIMETYPE, “application/x-www-form-urlencoded” ], “body=stuff” ); key my_key; my_key = llHTTPRequest( “http://www.mywebsite.com/”, [ HTTP_METHOD, “POST”, HTTP_MIMETYPE, "multipart/mixed; boundary=\"---1234567890---\"" ], “The body as multipart” ); NOTE WELL: Calls similar to the following will now be errors; they will trigger a debug error and return a Null key from llHTTPRequest. The invalid values in these examples did not trigger errors before (they probably would have caused problems on some web servers). key my_key; my_key = llHTTPRequest( “http://www.mywebsite.com/”, [ HTTP_METHOD, “POST”, HTTP_MIMETYPE, "text/application/xml” ], “my body” ); The value for HTTP_MIMETYPE has too many sections (more than one '/'); it does not follow the type/subtype pattern. Values like this one used to be on the wiki page for llHTTPRequest; they were never valid but were not checked. key my_key; my_key = llHTTPRequest( “http://www.mywebsite.com/”, [ HTTP_METHOD, “POST”, HTTP_MIMETYPE, "text/xmll charset=utf8” ], “my body” ); No semicolon after the mime type. key my_key; my_key = llHTTPRequest( “http://www.mywebsite.com/”, [ HTTP_METHOD, “POST”, HTTP_MIMETYPE, "text / xml” ], “my body” ); The value for HTTP_MIMETYPE includes spaces in the type/subtype section. key my_key; my_key = llHTTPRequest( “http://www.mywebsite.com/”, [ HTTP_METHOD, “POST”, HTTP_MIMETYPE, "text/xml\n” ], “my body” ); The value for HTTP_MIMETYPE includes a control character (A newline.) We'll be watching this thread and will try to clarify any questions or problems you encounter. Go forth and test please!
  6. Can a HTTP Proxy & SOCKS 5 Proxy IP Address be used to proxy login to the second life grid,with the SL-Viewer? What port number would be used for the login?
  7. Just like Authentication flow, which outlines the process by which the viewer establishes connections with a number of components,Server architecture,i.e the way viewer interacts with the Second Life servers, I want to know the flow in which SL is get connected with the web application. I want to connect SL with a web app written in python flask.when the URL created using python flask is hit from SL the response will be received by SL. what must be the flow for connection.? my web service will send request to sl web server..then how is the connection established?can you plz explain me in detail just like the Authentication flow explained in Second Life Wiki > Open Source > Authentication Flow.. thank you
  8. Just like Authentication flow, which outlines the process by which the viewer establishes connections with a number of components,Server architecture,i.e the way viewer interacts with the Second Life servers, I want to know the flow in which SL is get connected with the web application. I want to connect SL with a web app written in python flask.when the URL created using python flask is hit from SL the response will be received by SL. what must be the flow for connection.? my web service will send request to sl web server..then how is the connection established?can you plz explain me in detail just like the Authentication flow explained in Second Life Wiki > Open Source > Authentication Flow.. thank you
×
×
  • Create New...