Example of Response Basic
<?pas
uses System.Net;
// This example demonstrates various ways to control the HTTP response.
var mode := WebRequest.QueryField['mode'];
if mode = 'json' then begin
// Shortcut: Sets ContentType to 'application/json' and serializes the object
// Using JSON.Serialize with an anonymous record
var data := JSON.Serialize(record
status := 'success';
message := 'Hello from JSON';
end);
WebResponse.SetContentJSON(data);
end else if mode = 'error' then begin
// Shortcut: Sets status code and plain text body
WebResponse.SetStatusPlainText(403, 'Access Denied - You do not have permission');
end else if mode = 'raw_json' then begin
// Shortcut: Sets status code and raw JSON string
WebResponse.SetStatusJSON(201, '{"id": 123, "status": "created"}');
end else if mode = 'redirect' then begin
// Shortcut: Performs an HTTP redirect
WebResponse.SetStatusRedirect(302, '/index.dws');
end else begin
// Manual response handling
WebResponse.ContentType := 'text/html';
Print(#'
<h3>Response Control Demo</h3>
<ul>
<li><a href="?mode=json">JSON Shortcut (SetContentJSON)</a></li>
<li><a href="?mode=error">Plain Text Status (SetStatusPlainText)</a></li>
<li><a href="?mode=raw_json">JSON Status (SetStatusJSON)</a></li>
<li><a href="?mode=redirect">Redirect (SetStatusRedirect)</a></li>
</ul>
');
end;
?>
<h3>Response Control Demo</h3> <ul> <li><a href="?mode=json">JSON Shortcut (SetContentJSON)</a></li> <li><a href="?mode=error">Plain Text Status (SetStatusPlainText)</a></li> <li><a href="?mode=raw_json">JSON Status (SetStatusJSON)</a></li> <li><a href="?mode=redirect">Redirect (SetStatusRedirect)</a></li> </ul>