0

我已经测试了以下代码

@RestResource(urlMapping='/myservice')

global class MyService {
    @HttpGet
    global static void doGet() {
        RestContext.response.addHeader('Content-Type', 'text/plain');
        String name = RestContext.request.params.get('name');

        RestContext.response.responseBody = Blob.valueOf('Hello '+name);
    }
}

默认情况下,返回类型是 JSON。如何将响应格式更改为 XML。我尝试关注 RestContext.response..addHeader('Content-type','text/xml'); RestContext.response..responseBody=Blob.valueOf(''+newcase.Id+'');

但我仍然没有得到 XML 的响应

4

1 回答 1

0

您必须将其设置content-type请求而不是响应。

例如:

curl -H "Authorization: Bearer sessionId" -H "Content-Type: text/xml" -d @account.txt "https://instance.salesforce.com/services/apexrest/Account/"

此外,您应该定义一个XML 命名空间来引用您的方法使用的任何 Apex 命名空间。

注意Content-Type响应中的设置,使用XML.

某些参数和返回类型不能与 XML 一起用作请求的 Content-Type 或作为响应的接受格式,因此,具有这些参数或返回类型的方法不能与 XML 一起使用。

详细的信息

于 2012-09-13T20:54:52.067 回答