<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      巴拉巴拉 HANA CLOUD 版本的ODATE 接口案例

      今天分享一個S4HC的ODATA 接口

      這是一個維護PM中設備的的扣子

       

      REPORT  YTEST029.
      DATA: LO_HTTP_CLIENT TYPE REF TO IF_HTTP_CLIENT.
      DATA: LO_HTTP_CLIENT2 TYPE REF TO IF_HTTP_CLIENT.
      DATA: RESPONSE TYPE STRING.
      DATA:IV_URL TYPE STRING.

      根據SM59中配置的鏈接創建HTTP請求對象
      CALL METHOD CL_HTTP_CLIENT=>CREATE_BY_DESTINATION
        EXPORTING    "URL                = 'https://********.s4hana.ondemand.com:443/sap/opu/odata/sap/API_EQUIPMENT'
          DESTINATION        'S4H_CLOUD_TEST'"ME->DEST
        IMPORTING
          CLIENT             = LO_HTTP_CLIENT
        EXCEPTIONS
          ARGUMENT_NOT_FOUND 1
          PLUGIN_NOT_ACTIVE  2
          INTERNAL_ERROR     3
          OTHERS             4.

      IF SY-SUBRC <> 0.
        "error handling
      ENDIF.

      ODATA 接口必須啟用COOKIE
      LO_HTTP_CLIENT->PROPERTYTYPE_ACCEPT_COOKIE = IF_HTTP_CLIENT=>CO_ENABLED.

      DATA:IV_URL2 TYPE STRING.
      IV_URL2 = |/sap/opu/odata/sap/API_EQUIPMENT|.
      或者的TOKEN是API_EQUIOMENT的
      CALL METHOD CL_HTTP_UTILITY=>SET_REQUEST_URI
        EXPORTING
          REQUEST = LO_HTTP_CLIENT->REQUEST
          URI     = IV_URL2.

      設置表頭參數
      LO_HTTP_CLIENT->REQUEST->SET_HEADER_FIELD(
        NAME  'x-csrf-token'
        VALUE 'fetch' ).
      這是獲取Token
      LO_HTTP_CLIENT->REQUEST->SET_METHOD('HEAD').

      " Send the request
      LO_HTTP_CLIENT->SEND(
      *    EXPORTING
      *      timeout                    = CO_TIMEOUT_DEFAULT    " Timeout of Answer Waiting Time
        EXCEPTIONS
          HTTP_COMMUNICATION_FAILURE 1
          HTTP_INVALID_STATE         2
          HTTP_PROCESSING_FAILED     3
          HTTP_INVALID_TIMEOUT       4
          OTHERS                     ).
      發送請求獲取Token
      IF SY-SUBRC <> 0.
        RAISE HTTP_ERROR.
      ENDIF.

      " Receive the response
      LO_HTTP_CLIENT->RECEIVE(
        EXCEPTIONS
          HTTP_COMMUNICATION_FAILURE 1
          HTTP_INVALID_STATE         2
          HTTP_PROCESSING_FAILED     3
          OTHERS                     ).

      IF SY-SUBRC NE 0.
        RAISE HTTP_ERROR.
      ENDIF.

      回收請求
      DATA:EV_STATUS TYPE I.
      DATA:IV_TOKEN TYPE STRING.
      DATA:LT_COOKES TYPE TIHTTPCKI.
      " Get status code
      LO_HTTP_CLIENT->RESPONSE->GET_STATUSIMPORTING CODE = EV_STATUS ).
      檢查執行狀態
      IF EV_STATUS 200.
        "GET TIME STAMP FIELD ME->TOKEN_REFRESH_TIME.
        IV_TOKEN = LO_HTTP_CLIENT->RESPONSE->GET_HEADER_FIELD'x-csrf-token' ).
        LO_HTTP_CLIENT->RESPONSE->GET_COOKIESCHANGING COOKIES = LT_COOKES ).
      ENDIF.
      取出Token 




      DATA:LV_EQUNR TYPE EQUI-EQUNR,
        LV_VALDT            TYPE STRING.
      LV_EQUNR '''40043492'''.
      LV_VALDT '''9999-12-31T00%3A00'''.
      IV_URL = | /sap/opu/odata/sap/API_EQUIPMENT/DismantleEquipment?Equipment=%2740043494%27&ValidityEndDate=datetime%279999-12-31T00%3A00%27 |.
      拼接請求

      在Odata中有些特殊的POST 是沒有PAYLOAD的 直接POST  很奇怪

      CALL METHOD CL_HTTP_UTILITY=>SET_REQUEST_URI
        EXPORTING
          REQUEST = LO_HTTP_CLIENT->REQUEST
          URI     = IV_URL.



      "setting request method
      LO_HTTP_CLIENT->REQUEST->SET_METHOD('POST').



      "adding headers

      LO_HTTP_CLIENT->REQUEST->SET_HEADER_FIELD( NAME 'x-csrf-token' VALUE = IV_TOKEN ).
      LO_HTTP_CLIENT->REQUEST->SET_HEADER_FIELD( NAME 'If-Match' VALUE '*' ).

      "BREAK-POINT .
      content type 很重要 不然ODATA 沒辦法抓取請求參數值
      LO_HTTP_CLIENT->REQUEST->SET_HEADER_FIELD( NAME 'Content-Type' VALUE 'application/json')."'application/xml;charset=utf-8').

      CALL METHOD LO_HTTP_CLIENT->SEND
        EXCEPTIONS
          HTTP_COMMUNICATION_FAILURE 1
          HTTP_INVALID_STATE         2
          HTTP_PROCESSING_FAILED     3
          HTTP_INVALID_TIMEOUT       4
          OTHERS                     5.

      IF SY-SUBRC 0.
        CALL METHOD LO_HTTP_CLIENT->RECEIVE
          EXCEPTIONS
            HTTP_COMMUNICATION_FAILURE 1
            HTTP_INVALID_STATE         2
            HTTP_PROCESSING_FAILED     3
            OTHERS                     5.
      ENDIF.

      IF SY-SUBRC <> 0.
        "error handling
      ENDIF.

      RESPONSE = LO_HTTP_CLIENT->RESPONSE->GET_CDATA).

      WRITE'response: ', RESPONSE.


      BREAK-POINT.

      Content-Type
      posted @ 2024-01-22 13:45  我肉山  閱讀(53)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 情欲少妇人妻100篇| 色偷偷www.8888在线观看| 国产二区三区不卡免费| 欧美极品色午夜在线视频| 四虎成人高清永久免费看| 亚洲国产综合一区二区精品| 看全黄大色黄大片视频| 亚洲国产精品人人做人人爱| 亚洲精品一区国产精品| 免费无码又爽又刺激高潮虎虎视频| 久久婷婷大香萑太香蕉AV人| 日韩高清视频 一区二区| 麻豆国产va免费精品高清在线| 九九热精品免费视频| 午夜成人精品福利网站在线观看| 国产熟女一区二区五月婷| 东京热无码国产精品| 亚洲av无码片在线播放| 久久精品国产熟女亚洲av| 日韩人妻无码精品无码中文字幕| 激情综合网激情国产av| 亚洲国模精品一区二区| 南康市| 熟女蜜臀av麻豆一区二区| 亚洲国产精品区一区二区| 婷婷亚洲综合五月天小说| 97se亚洲国产综合自在线观看| 国产做无码视频在线观看| 人人妻人人狠人人爽天天综合网| 亚洲乱妇老熟女爽到高潮的片| 亚洲国产美女精品久久久| 亚洲狠狠婷婷综合久久久| 成年人尤物视频在线观看| 国产日韩一区二区三区在线观看 | 久久99精品久久久大学生| 激情综合网激情国产av| 国模粉嫩小泬视频在线观看| 午夜精品区| 日韩理伦片一区二区三区| 国产亚洲精品成人aa片新蒲金| 少妇高潮流白浆在线观看|