从javascript客户端调用javascript适配器会得到415个不受支持的媒体类型响应

从javascript客户端调用javascript适配器会得到415个不受支持的媒体类型响应,javascript,ibm-mobilefirst,Javascript,Ibm Mobilefirst,在MFF8.0中,从javascript客户端调用javascript适配器会得到415个不受支持的媒体类型响应。 客户端代码: var parameters = [{ 'project_code': '123', 'name': 'ABC', 'type': 'A' }]; var resourceRequest = new WLResourceRequest("/adapters/myAdapter/search, WLResourceRequest.POST); r

在MFF8.0中,从javascript客户端调用javascript适配器会得到415个不受支持的媒体类型响应。 客户端代码:

    var parameters = [{ 'project_code': '123', 'name': 'ABC', 'type': 'A' }];
    var resourceRequest = new WLResourceRequest("/adapters/myAdapter/search, WLResourceRequest.POST);
    resourceRequest.setTimeout(60000);
    resourceRequest.setHeader("Content-Type", "application/json;charset=utf-8");
    if (parameters === undefined) {
        resourceRequest.send().then(function(res){
            dfd.resolve(res);
        },function(){
            dfd.reject();
        });
    } else {
        resourceRequest.send(parameters[0]).then(function(res){
            dfd.resolve(res);
        },function(){
            dfd.reject();
        });
    }
javascript适配器:

function search(p) {
  MFP.Logger.info(“searching…”);
  if (p) {
    var pj = checkDefaultValue(p.project_code);
    var name = checkDefaultValue(p.name);
    var type = checkDefaultValue(p.type);
    return search(pj,name,type); // this returns Javascript object
  } else return {};
 }
在服务器端,不生成诸如“搜索…”之类的日志,响应代码为415。
如何解决此问题?

您应该将resourceRequest的内容类型设置为application/x-www-form-urlencoded

在代码中添加这一行

setHeader'Content-Type','application/x-www-formurlencoded'


请参阅

I按照您的建议更新了内容类型标题,但结果没有更改。仍然收到415个不受支持的媒体类型响应。是否有正在验证输入的输入/输出筛选器?您是否可以共享网络跟踪?看起来适配器没有被调用,我相信响应来自其他层-您是否有任何输入/输出过滤器来验证输入?您是否可以共享网络跟踪?看起来适配器没有被调用,我相信响应来自其他层