public XResponse Excute(ApiRequest request, string param) { initializeHeaderData(request); var result = XRunner.Api(request.ServiceName, request.MethodName, param, XContext.Current.Token); return(result); }
/// <summary> /// 服务执行 /// </summary> /// <param name="metadata"></param> /// <param name="request"></param> /// <param name="context"></param> /// <returns></returns> private object doExcute(ServiceRegistData service, ServiceRequest request, Action <object> responseAction, RpcCallContext context) { var typeParams = new List <object>(); typeParams.Add(service); typeParams.Add(request); typeParams.Add(context); if (context?.ServerCallContext != null) { typeParams.Add(context.ServerCallContext); } var paramValue = context?.PeerAddress?.IpAddress; var nameParams = new Dictionary <string, string>(StringComparer.OrdinalIgnoreCase); if (!string.IsNullOrWhiteSpace(paramValue)) { nameParams.Add("ip", paramValue); } else { nameParams.Add("ip", "127.0.0.1"); } var result = XRunner.Invoke(service.ServiceImpl, request.ServiceData.ServiceMethod, request.ServiceData.ServiceParam, nameParams, typeParams, responseAction); return(result); }
private XResponse actionExcute(IRequest request) { var serviceName = getServiceName(request, 1); var methodName = getServiceName(request, 2); var param = getRequestBody(request); var token = getRequestToken(request, XHeader.TOKEN); return(XRunner.Api(serviceName, methodName, param, token)); }
public string run(string typeName, string methodName, string param, string token) { return(XRunner.Api(typeName, methodName, param, token).ToJsResponse()); }