C++;建筑商&x2B;重新请求+;Dreamfactory-无法传递会话\u id HTTPHeader < P>使用C++ Builder XE7和其余组件的试用版。我认为我没有正确地将HttpHeader传递给Dreamfactory v1.8。我能够通过POST请求进行身份验证,该请求要求将电子邮件和密码作为Body属性中的JSON对象传递。我可以获得后续呼叫所需的会话id REST调试器工作得非常好,并且从表中也获得数据,但是我不能将它转换成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(); }

C++;建筑商&x2B;重新请求+;Dreamfactory-无法传递会话\u id HTTPHeader < P>使用C++ Builder XE7和其余组件的试用版。我认为我没有正确地将HttpHeader传递给Dreamfactory v1.8。我能够通过POST请求进行身份验证,该请求要求将电子邮件和密码作为Body属性中的JSON对象传递。我可以获得后续呼叫所需的会话id REST调试器工作得非常好,并且从表中也获得数据,但是我不能将它转换成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(); },c++,rest,http-headers,c++builder,builder,C++,Rest,Http Headers,C++builder,Builder,我做错了什么?我怀疑RESTRequest2->AddParameter方法不正确。RESTRequest2->Execute()返回HTTP 500服务器错误 我在Windows 8.1上工作,无法让Fiddler 4工作-因此我无法看到传递到服务器的内容 求求你,求求你,帮帮我。需要得到这个工作,这样我就可以购买许可证,并开始对该项目的工作 非常感谢 艾耶明白了!结果表明,我在第一次调用中传递的会话ID参数值不正确。这个代码有效。我使用了两个RESTRequest对象。一个使用Dreamfa

我做错了什么?我怀疑RESTRequest2->AddParameter方法不正确。RESTRequest2->Execute()返回HTTP 500服务器错误

我在Windows 8.1上工作,无法让Fiddler 4工作-因此我无法看到传递到服务器的内容

求求你,求求你,帮帮我。需要得到这个工作,这样我就可以购买许可证,并开始对该项目的工作

非常感谢


艾耶

明白了!结果表明,我在第一次调用中传递的会话ID参数值不正确。这个代码有效。我使用了两个RESTRequest对象。一个使用Dreamfactory进行身份验证并返回会话id,RESTRequest2用于获取数据-会话id作为HTTP头传递给Dreamfactory

        TJSONObject *JSON = (TJSONObject*)TJSONObject::ParseJSONValue(RESTResponse1->JSONText);
        TJSONPair *pair = JSON->Get("session_id");
        sSessionID = pair->Value();
        RESTRequest2->Resource = "mssql_utilities/leavecategory";
        RESTRequest2->Params->AddItem("X-DreamFactory-Application-Name", "myApp", pkHTTPHEADER);
        RESTRequest2->Params->AddItem("X-DreamFactory-Session-Token", sSessionID, pkHTTPHEADER);
        RESTRequest2->Execute();