Http Publisher
The Http publisher sends data over HTTP via a method of your choice. This publisher supports the following features:
-
Authentication via Basic, Digest, or Windows integrated
-
Definable method type
-
Fuzzing and dynamic setting of headers (both key and value)
-
Fuzzing and dynamic setting of query strings
-
Optional cookie support
-
SSL
Parameters
-
Method — HTTP Method type (GET, POST, etc)
-
Url — URL of target
-
BaseUrl — Base URL is used by some authentication types (optional)
-
Username — Username for authentication (optional)
-
Domain — Domain for authentication (optional)
-
Cookies — Enable cookie support (optional, defaults to true)
-
CookiesAcrossIterations — Track cookes across iterations (optional, defaults to false)
-
Timeout — How long to wait in milliseconds for data/connection (optional, default 3,000)
-
IgnoreCertErrors — Allow https regardless of cert status (defaults to false)
Actions
-
call — To fuzz the querystring or headers special method names are supported
-
Query — Specify as the method name for a call action, the first parameter is the query string
-
Header — Specify as the method name for a call action, the first parameter is the header name, the second is the value
-
-
output — Data sent via output is provided as the HTTP body
Examples
<DataModel name="PostBody">
<!-- ... -->
</DataModel>
<StateModel name="TheState">
<State name="initial">
<Action type="output">
<DataModel ref="PostBody" />
</Action>
</State>
</StateModel>
<Test name="Default">
<!-- ... -->
<Publisher class="Http">
<Param name="Method" value="POST" />
<Param name="Url" value="http://foo.com/user/create" />
</Publisher>
</Test>
<DataModel name="QueryModel">
<String value="key"/>
<String value="=" token="true" />
<String value="value"/>
</DataModel>
<StateModel name="TheState">
<State name="initial">
<Action type="call" method="Query">
<Param>
<DataModel ref="QueryModel" />
</Param>
</Action>
</State>
</StateModel>
<Test name="Default">
<!-- ... -->
<Publisher class="Http">
<Param name="Method" value="GET" />
<Param name="Url" value="http://foo.com/user/create" />
</Publisher>
</Test>
<DataModel name="HeaderKey">
<String value="Content-Type" />
</DataModel>
<DataModel name="HeaderValue">
<String value="html" />
</DataModel>
<StateModel name="TheState">
<State name="initial">
<Action type="call" method="Header">
<Param>
<DataModel ref="HeaderKey" />
</Param>
<Param>
<DataModel ref="HeaderValue" />
</Param>
</Action>
</State>
</StateModel>
<Test name="Default">
<!-- ... -->
<Publisher class="Http">
<Param name="Method" value="GET" />
<Param name="Url" value="http://foo.com/user/create" />
</Publisher>
</Test>


