Virtuoso as opposed to HTTP based redirection.
Handling situations where HTTP level redirection is inadequate.
For example, 303
redirection offered when implementing hashless Linked Data URIs.
Instead of sending a 303 Virtuoso will redirect to the URL in "Location:" and return 200 OK
.
Basically, this is like curl -iL
instead of curl -i
, but implemented inside Virtuoso.
Directly or via URI template syntax used to construct rewrite rules for Virtuoso virtual directories / web service endpoints for the purposes of which Virtuoso offers the http_internal_redirect function:
http_internal_redirect ( in full_path varchar, -- Set new logical path to be redirected to [ in p_full_path varchar ] , -- Set physical path to be redirected to [ in long_url varchar ], -- Reserved for internal usage [ in keep_lpath integer ] -- Reserved for internal usage )
create procedure my_redirect() { declare full_path varchar; ... full_path := '/DAV/VAD/test/'; http_internal_redirect (full_path); set_user_id ('demo'); set http_charset='utf-8'; http_header ('Content-Type: text/xml; charset=UTF-8\r\n'); WS.WS.GET (path, pars, lines); return null; } }