Plsql 使用UTL\U HTTP连接到供应商服务器时出现问题

Plsql 使用UTL\U HTTP连接到供应商服务器时出现问题,plsql,plsql-package,Plsql,Plsql Package,我正在尝试编写一个PL/SQL过程,该过程连接到供应商服务器并传输一些学生数据 我一直在使用UTL_HTTP,但没有成功 下面是我的UTL_HTTP cpde。为了便于阅读,我剪切了大部分数据 var_data_body :='input_data=[{"School ID*":"B10011122","Class Code*":"MATH101","Location*":"CL

我正在尝试编写一个PL/SQL过程,该过程连接到供应商服务器并传输一些学生数据

我一直在使用UTL_HTTP,但没有成功

下面是我的UTL_HTTP cpde。为了便于阅读,我剪切了大部分数据

    var_data_body :='input_data=[{"School ID*":"B10011122","Class Code*":"MATH101","Location*":"CLB223"}, 
    {"School ID*":"B20022233","Class Code*":"BIOL101","Location*":"CLB123"}]';

    var_body_combine:= 'input_type=JSON '||var_data_body ||
                        ||' drop_not_passed_enrollments=false '
                        ||' dry_run=true '; 
    var_body_length:= LENGTH(var_body_combine);

    const_http_request := UTL_HTTP.BEGIN_REQUEST (temp_new_url, const_POST_method);
    utl_http.set_header(const_http_request, 'Content-Type', 'application/x-www-form-urlencoded');
    utl_http.set_header(const_http_request, 'Content-Length',var_body_length);
    UTL_HTTP.set_header(const_http_request, 'Authorization','Bearer '|| var_token);  --this is vendor authorization token that I got from earlier handshake process.
    UTL_HTTP.set_header(const_http_request, 'X-TW-PersonId',const_userid);  --this is my user_id

    UTL_HTTP.write_text(const_http_request, var_body_combine);

    DBMS_OUTPUT.put_line ('My full var_body is: '||var_body_combine);
      
    const_http_response := UTL_HTTP.GET_RESPONSE (const_http_request);


供应商服务器向我发出一般错误消息,表示他们无法处理我的请求。 我请一位供应商代表上传数据主体部分,他们说他们可以很好地上传我的数据。 我在想我在语法上做错了什么

我一直在尝试将主体分割成不同的行(或添加/删除数据urlencode),如下所示。但还是给了我错误。 我做的一些步骤甚至给我错误的请求消息

    UTL_HTTP.write_text(const_http_request, '--data-urlencode input_type=JSON');
    UTL_HTTP.write_text(const_http_request, '--data-urlencode '|| var_data_body );
    UTL_HTTP.write_text(const_http_request, '--data-urlencode drop_not_passed_enrollments=false');
    UTL_HTTP.write_text(const_http_request, '--data-urlencode dry_run=true');   
我阅读了一些关于UTL_HTTP的文档,不确定错过了什么,因为有些示例非常简单

以前是否有人使用过类似的过程

任何见解都值得赞赏


谢谢。

它可能与您正在传递的内容类型有关。请看一看,它可能与您正在传递的内容类型有关。请看一看