ue4访问php接口

 继上一篇介绍ue4打开web url窗口,这篇就来介绍下怎么访问php接口。

要做的两步:

1.c++自己写个接受请求的方法

 f Post lhc-URL Request就是自定义的c++方法,

/**###lhc 
* 增加一个参数,接收一个FString,该参数的意义是:用URL的途径向php webservice发送数据,该数据的格式是key=value&key=value....
*
* @param	WorldContextObject		
* @param	url						
*
*/
void UJsonFieldData::PostRequest_lhc(UObject* WorldContextObject, const FString pm_lhcDataconst, const FString& url)
{
	/*FString outStr;
	TSharedRef<TJsonWriter<TCHAR>> JsonWriter = TJsonWriterFactory<TCHAR>::Create(&outStr);

	// Start writing the response
	WriteObject(JsonWriter, "", new FJsonValueObject(lhc_jsonData));
	JsonWriter->Close();

	// Log the post data for the user (OPTIONAL)
	UE_LOG(LogTemp, Warning, TEXT("Post data: %s"), *outStr);*/

	// Create the post request with the generated data
	TSharedRef< IHttpRequest > HttpRequest = FHttpModule::Get().CreateRequest();
	HttpRequest->SetVerb("POST");
	HttpRequest->SetURL(CreateURL(url));

	//###lhc 因为目前不知道php webservice取得JSON数据的代码怎么写,而且目前php service也没有必须获得客户端JSON数据(一个对象结构)的需求,
	//因此,暂时先通过URL的方式发送数据,用Key=value的形式,每组Key=Value之间用&分隔,如:name=a1&password=q1
	//HttpRequest->SetHeader("Content-Type", "application/json");
	HttpRequest->SetHeader("Content-Type", "application/x-www-form-urlencoded");
	
	//###lhctmp
	//HttpRequest->SetContentAsString(outStr);
	//FString siwe = "name=a1&password=q1";
	HttpRequest->SetContentAsString(pm_lhcDataconst);

	HttpRequest->OnProcessRequestComplete().BindUObject(this, &UJsonFieldData::OnReady);

	// Execute the request
	HttpRequest->ProcessRequest();
}

  

 

2.按钮event

 

posted @ 2017-01-16 15:29  产卵的鱼  阅读(987)  评论(0编辑  收藏  举报