1*1c60b9acSAndroid Build Coastguard Worker# lws minimal http client custom headers
2*1c60b9acSAndroid Build Coastguard Worker
3*1c60b9acSAndroid Build Coastguard WorkerThis http client application shows how to send and receive custom headers.
4*1c60b9acSAndroid Build Coastguard Worker
5*1c60b9acSAndroid Build Coastguard WorkerThis currently only works on http 1, so the app forces that even if h2 enables.
6*1c60b9acSAndroid Build Coastguard Worker
7*1c60b9acSAndroid Build Coastguard Worker## build
8*1c60b9acSAndroid Build Coastguard Worker
9*1c60b9acSAndroid Build Coastguard Worker```
10*1c60b9acSAndroid Build Coastguard Worker $ cmake . && make
11*1c60b9acSAndroid Build Coastguard Worker```
12*1c60b9acSAndroid Build Coastguard Worker
13*1c60b9acSAndroid Build Coastguard Worker## usage
14*1c60b9acSAndroid Build Coastguard Worker
15*1c60b9acSAndroid Build Coastguard WorkerCommandline option|Meaning
16*1c60b9acSAndroid Build Coastguard Worker---|---
17*1c60b9acSAndroid Build Coastguard Worker-d <loglevel>|Debug verbosity in decimal, eg, -d15
18*1c60b9acSAndroid Build Coastguard Worker-l| Connect to https://localhost:7681 and accept selfsigned cert
19*1c60b9acSAndroid Build Coastguard Worker-n|no TLS
20*1c60b9acSAndroid Build Coastguard Worker
21*1c60b9acSAndroid Build Coastguard WorkerThe app looks for a custom header "test-custom-header" sent by warmcat.com.
22*1c60b9acSAndroid Build Coastguard Worker
23*1c60b9acSAndroid Build Coastguard Worker```
24*1c60b9acSAndroid Build Coastguard Worker $ ./lws-minimal-http-client-custom-headers
25*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:46:45:7582] USER: LWS minimal http client Custom Headers [-d<verbosity>] [-l] [--h1]
26*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:46:45:7671] NOTICE: created client ssl context for default
27*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:46:46:7812] USER: Connected with server response: 200
28*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:46:46:7812] NOTICE: callback_http: custom header: 'hello'
29*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:46:46:7814] USER: RECEIVE_CLIENT_HTTP_READ: read 1024
30*1c60b9acSAndroid Build Coastguard Worker...
31*1c60b9acSAndroid Build Coastguard Worker```
32*1c60b9acSAndroid Build Coastguard WorkerYou can use the -n and -l to make this test app connect to localhost:7681 over http,
33*1c60b9acSAndroid Build Coastguard Workerand confirm the "dnt:1" header was sent either by tcpdump or by running the test
34*1c60b9acSAndroid Build Coastguard Workerserver on :7681 with -d1151
35*1c60b9acSAndroid Build Coastguard Worker
36*1c60b9acSAndroid Build Coastguard Worker```
37*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:48:53:6806] PARSER: WSI_TOKEN_NAME_PART 'd' 0x64 (role=0x20000000) wsi->lextable_pos=0
38*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:48:53:6807] PARSER: WSI_TOKEN_NAME_PART 'n' 0x6E (role=0x20000000) wsi->lextable_pos=567
39*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:48:53:6807] PARSER: WSI_TOKEN_NAME_PART 't' 0x74 (role=0x20000000) wsi->lextable_pos=-1
40*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:48:53:6807] PARSER: WSI_TOKEN_NAME_PART ' ' 0x20 (role=0x20000000) wsi->lextable_pos=-1
41*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:48:53:6807] PARSER: WSI_TOKEN_NAME_PART '1' 0x31 (role=0x20000000) wsi->lextable_pos=-1
42*1c60b9acSAndroid Build Coastguard Worker' 0x0D (role=0x20000000) wsi->lextable_pos=-1NAME_PART '
43*1c60b9acSAndroid Build Coastguard Worker[2019/03/11 05:48:53:6807] PARSER: WSI_TOKEN_NAME_PART '
44*1c60b9acSAndroid Build Coastguard Worker```
45*1c60b9acSAndroid Build Coastguard Worker
46