我在服务器上有一个操作合同,如下所示:
[OperationContract]
[WebInvoke(Method = "POST", UriTemplate = "/RegisterOrganization", RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare)]
void RegisterOrganization(Organization organization, User admin);
现在在客户端,我有以下资源:
var RegisterOrganization = $resource(baseUrlService.getBaseUrl() + 'REST/Organization.svc/RegisterOrganization');
我的问题是如何将两个对象作为参数传递:
RegisterOrganization.save(organization,admin)
通过这样做我得到500服务器错误,任何想法我怎么能实现这个?
答案 0 :(得分:0)
不知道您的服务器端调用,但save
$resource
方法首先接受查询字符串参数,这些参数将作为查询字符串发送,如:
REST/Organization.svc/RegisterOrganization?organizationName=StackOverflow&site=
第二个参数将作为JSON发送。您的服务器端调用接受数据为JSON。所以考虑一下这个变化:
var data = angular.extend({}, organization, admin);
RegisterOrganization.save(null, data);