The Web Client DAT allows you to send HTTP requests to web servers from TouchDesigner. It supports GET, POST, PUT, DELETE, HEAD, OPTIONS and PATCH http methods.
The Web Client DAT supports various authentication types such as: basic, oauth1, oauth2.
The Web Client DAT allows for streaming from web servers.
The Web Client DAT sends HTTP requests to web servers and then outputs the response in the DAT. With streaming enabled it can stream data from a web server.
When streaming is enabled, Clamp Output as Rows should be enabled. This turns the output of the DAT into a FIFO table instead of raw text. Only the last N lines will be displayed, where N is the value of the Maximum Lines parameter. This will prevent the text in the DAT from getting too larger and will keep cook-times down as a result.
The Web Client DAT supports sending of GET, POST, PUT, DELETE, HEAD, OPTIONS, and PATCH request methods. The Web Client DAT also supports 4 authentication methods: Basic, Digest, OAuth1, and OAuth2.
The first input is the extra headers to send in the request. It should be a table with 2 columns, structured as name/value pairs. For example:
The second input is the additional options to send in the request. These are query parameters which will be appended to the URL. This can be a table with two columns, structured as name/value pairs. It can also just be text, in which case it will append as-is. Example input:
The Web Client DAT is the successor to the Web DAT.
Timeouttimeout - Timeout of the request if no response is received from the web server.
Include Header in Outputincludeheader - Includes the header in the output of the response.
Asynchronousasync - Enables asynchronous sending/receiving (ie. TouchDesigner doesn't hang while waiting for a response from the web server).
Parameters - Authentication Page
Authentication Typeauthtype - ⊞ - The type of authentication.
Nonenone - No authentication
Basicbasic - Basic authentication is base-64 encoded username and password.
Digestdigest - Digest authentication is base-64 encoded username and password that's encrypted with a hashing function. Digest is a more secure version of Basic authentication.
OAuth1ouath1 - Version 1 of OAuth. OAuth1 requires App Key, App Secret, User OAuth Token, and User OAuth Secret. These can be found via the account on the web server that request is being sent to. For example, in the case of the Twitter API the values of these 4 parameters can be found under the account profile.
OAuth2ouath2 - Version 2 of OAuth. OAuth2 first requires an HTTP request be sent to the web server to acquire the Client ID and token. It can be acquired using a browser.
Usernameusername - Username used in Basic/Digest authentication.
Passwordpw - Password used in Basic/Digest authentication.
App Keyappkey - OAuth1 App Key retrieved from web server.
App Secretappsecret - OAuth1 App Secret retrieved from web server.
User OAuth Tokenoauthtoken - OAuth1 user token retrieved from web server.
User OAuth Secretoauthsecret - OAuth1 user secret retrieved from web server.
Client IDclientid - OAuth2 Client ID retrieved from web server.
Tokentoken - OAuth2 token retrieved from web server.
Parameters - Output Page
Clear Outputclear - Clears the output of the DAT.
Clamp Output as Rowsclamp - When enabled, the output of the DAT is table instead of text. The rows will also be clamped to Maximum lines parameter value. This should be enabled when streaming is enabled too ensure that the output does not get too large.
Maximum Linesmaxlines - The maximum number of rows when clamping is enabled.
Callbacks DATcallbacks - The Callbacks DAT.
Parameters - Common Page
Languagelanguage - ⊞ - Select how the DAT decides which script language to operate on.
Inputinput - The DAT uses the inputs script language.
Nodenode - The DAT uses it's own script language.
Edit/View Extensionextension - ⊞ - Select the file extension this DAT should expose to external editors.
datdat - various common file extensions.
From Languagelanguage - pick extension from DATs script language.
Custom Extensioncustom - Specify a custom extension.
Custom Extensioncustomext - Specifiy the custom extension.
Word Wrapwordwrap - ⊞ - Enable Word Wrap for Node Display.
An Operator Family that manipulates text strings: multi-line text or tables. Multi-line text is often a command Script, but can be any multi-line text. Tables are rows and columns of cells, each containing a text string.
The generic thing that holds an Operator, and includes Flags (display, bypass, lock, render, immune) and its position/size in the network. Whether you "lay down an Operator" or "lay down an Node", you're doing the same thing.