こうして出来上がったHTTPサーバ処理の中心部分が以下です。
TCPで受け取った文字列の先頭が(GETの)「G」ならば(←えらい手抜き)
「HTTP~」以下の固定文字列を送り出すだけです。
if(user_data[0]=='G'){ /* GETメソッド */
strcpy(user_data,"HTTP/1.0 200 OK\n"); /* HTTPヘッダ */
strcat(user_data,"Connection: close\n");
strcat(user_data,"Content-type: text/html\n");
strcat(user_data,"\n");
strcat(user_data,"<html>\n"); /* HTML文本体 */
strcat(user_data,"<body>\n");
strcat(user_data,"HTTP TEST\n");
strcat(user_data,"</body>\n");
strcat(user_data,"</html>\n");
user_size = strlen(user_data); /*ユーザーデータ数*/
result = Send_TCP(socket); /*TCPで送信 */
if(result != 0)
crt_printf("TX Err");
}
}
ヘッダ部分の1行目「HTTP/1.0 200 OK」が応答コードと言われる大事なところで
後は説明読んで要りそうなパラメータ、1行の空行の後にHTML文が追加されています。HTML文法というのもほとんど知らなかったのですが、とりあえずこれで文字が表示されるでしょうか。