Sample code for 30+ languages & platforms
Dart Requires Chilkat v11.0.0+

HTTPS PUT application/x-www-form-urlencoded

See more HTTP Examples

Demonstrates two ways of sending an HTTPS PUT application/x-www-form-urlencoded request.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // This example assumes the Chilkat API to have been previously unlocked.
  // See Global Unlock Sample for sample code.

  final http = CkHttp();

  // The 1st example sends a PUT with the query params in the URL.
  // The body of the request will be empty.
  final url = 'https://example.com/leads/12345678?uid=XXXX&apikey=YYYYYY&notes=Test_Note';

  // Sends the following request:

  // PUT /leads/12345678?uid=XXXX&apikey=YYYYYY&notes=Test_Note HTTP/1.1
  // Host: example.com
  // Accept: */*
  // Accept-Encoding: gzip
  // Content-Length: 0
  // 

  final resp = CkHttpResponse();
  try {
    http.httpStr('PUT', url, '', '', 'application/x-www-form-urlencoded', resp);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  print('Response status code = ${resp.statusCode}');
  print('Response body: ${resp.bodyStr}');

  // -----------------------------------------------------------------------
  // Now we send the same request, but instead the query params are in the HTTP request body.

  final req = CkHttpRequest();
  req.httpVerb = 'PUT';
  req.path = '/leads/12345678';
  req.addParam('uid', 'XXXX');
  req.addParam('apikey', 'YYYYYY');
  req.addParam('notes', 'Test_Note');

  // Sends the following request:

  // POST /leads/12345678 HTTP/1.1
  // Host: example.com
  // Content-Type: application/x-www-form-urlencoded
  // Content-Length: 38
  // 
  // uid=XXXX&apikey=YYYYYY&notes=Test_Notereq.HttpVerb = "POST";
  req.httpVerb = 'POST';
  req.contentType = 'application/x-www-form-urlencoded';

  try {
    http.httpReq('https://example.com/leads/12345678', req, resp);
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  print('Response status code = ${resp.statusCode}');
  print('Response body: ${resp.bodyStr}');
}