SAP Odata batch操作,只支持multipart_mixed类型的content-type

94 阅读1分钟

题目所说的这个限制在SAP OData gateway的源代码里看得非常清楚:

  WHEN /IWCOR/if_DS_uri=>gc_uri_type_9.
        CASE lv_http_method.
          WHEN /IWCOR/if_REST_request=>gc_method_post.
            lv_content_type = io_request->get_header_field( if_http_header_fields=>content_type ).
            TRANSLATE lv_content_type TO LOWER CASE.
            IF lv_content_type IS INITIAL.
              RAISE EXCEPTION TYPE /IWCOR/cx_DS_bad_request.
            ELSEIF strlen( lv_content_type ) < 15 or lv_content_type(15) <> /IWCOR/if_REST_media_type=>gc_multipart_mixed.
              RAISE EXCEPTION TYPE /IWCOR/cx_DS_unsupp_media_type.
            ENDIF.
            TRY.

在方法/IWCOR/CL_DS_PROC_DISPATCHER->/IWCOR/IF_DS_PROCESSOR~PROCESS里:如果content-type不为multipart-mixed, 则抛出异常: unsupported media type

要获取更多Jerry的原创文章,请关注公众号"汪子熙":