【发布时间】:2015-03-11 10:17:21
【问题描述】:
使用 C++ Builder XE7 的试用版和 REST 组件。我想我没有正确地将 HTTPHeaders 传递给 Dreamfactory v1.8。我能够使用 POST 请求进行身份验证,该请求需要将电子邮件和密码作为 JSON 对象传递到 Body 属性中。我可以获得后续调用所需的 session_id。
RESTDebugger 工作得非常好,也可以从表中获取数据 - 但我无法将其转换为 C++ 中的应用程序。这是我调用登录资源后触发的事件的代码
enter code here
void __fastcall TForm1::RESTRequest1AfterExecute(TCustomRESTRequest *Sender)
{
Label1->Text = RESTResponse1->JSONText;
TJSONObject *JSON = (TJSONObject*)TJSONObject::ParseJSONValue(RESTResponse1->JSONText);
TJSONPair *pair = JSON->Get("session_id");
sSessionID = pair->JsonValue->ToString();
RESTRequest2->Resource = "mssql_utilities/leaveCategory?order=categoryname";
RESTRequest2->Method = rmGET;
RESTRequest2->AddParameter("X-DreamFactory-Application-Name", "NDTVi", pkHTTPHEADER);
RESTRequest2->AddParameter("X-DreamFactory-Session-Token", sSessionID, pkHTTPHEADER);
RESTRequest2->AddParameter()
RESTRequest2->Execute();
}
我做错了什么?我怀疑 RESTRequest2->AddParameter 方法不正确。 RESTRequest2->Execute() 返回 HTTP 500 服务器错误。
我在 Windows 8.1 上工作,无法让 Fiddler 4 工作 - 所以我无法看到传递给服务器的内容。
请,请,帮助。需要完成这项工作,以便我可以购买许可证并开始从事该项目。
非常感谢
耶
【问题讨论】:
标签: c++ rest http-headers c++builder builder