Django サーバーにログインする C++ アプリケーションを作成しようとしています。これを探していましたが、特定の質問に対する解決策が見つかりませんでした。
リクエストを行うために、libcurl Web サイトの例の 1 つを使用しています。
#include <stdio.h>
#include <curl/curl.h>
int main(void)
{
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "http://127.0.0.1/");
/* Perform the request, res will get the return code */
res = curl_easy_perform(curl);
/* Check for errors */
if(res != CURLE_OK)
fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res));
/* always cleanup */
curl_easy_cleanup(curl);
}
return 0;
}
そして、ユーザーとパスワードを入れるオプションを見つけました:
curl_easy_setopt(curl, CURLOPT_USERPWD, "luis:123456");
しかし、問題は、Django がこの curl オプションをどのように認識できるかがわからないことです。
その他の可能性として、Django が提供するログイン用のフォームに入力する方法があります。私が使用しているフォームは次のとおりです。
<html><body>
<form method="post" action="/login">
{% csrf_token %}
{% if form.errors %}
<p class="error">Login error</p>
{% endif %}
<table>
<tr>
<td>Username</td>
<td>{{ form.username }}</td>
</tr>
<tr>
<td>Password</td>
<td>{{ form.password }}</td>
</tr>
</table>
<input type="submit" value="login" />
</form>
</body>
</html>
このオプションでは、私の問題は、C++ と curl を使用してフォームを取得して完成させる方法がわからないことです。