Tiêu đề phản hồi và yêu cầu XML SOAP

Trang này cung cấp thông tin về các tiêu đề của yêu cầu SOAP XML bắt buộc cũng như các tiêu đề được trả về trong phản hồi.

Tiêu đề bắt buộc của yêu cầu

Tất cả lệnh gọi API SOAP phải có phần tử <RequestHeader> trong tiêu đề; phần tử này được xác định trong tất cả WSDL dịch vụ. Thư viện ứng dụng cung cấp để thêm tiêu đề này cho bạn bằng các giá trị mà bạn cung cấp. Dưới đây là nội dung mô tả về tất cả các phần tử của <RequestHeader>:

Phần tử Mô tả
<networkCode>

Mã mạng của mạng đang được định địa chỉ. Bạn phải cung cấp mã mạng khi thực hiện tất cả yêu cầu, ngoại trừ NetworkService.getAllNetworks()NetworkService.makeTestNetwork().

Đảm bảo rằng bạn chỉ sử dụng mã mạng có sẵn để đăng nhập vào tài khoản của mình. Bạn có thể tìm thấy mã trên trang web Google Ad Manager cho tài khoản của mình, trên trang Quản trị > Trang Cài đặt mạng bên cạnh "Mã mạng".

<applicationName> Tên chuỗi tuỳ ý xác định ứng dụng của bạn. Thông tin này sẽ xuất hiện trong tệp nhật ký của Google. Ví dụ: "Khoảng không quảng cáo của tôi Ứng dụng" hoặc "App_1".

Lưu ý: Mọi yêu cầu mà ứng dụng của bạn gửi tới API Ad Manager đều phải bao gồm mã truy cập OAuth2. Truyền mã thông báo vào tiêu đề HTTP dưới dạng: Authorization: Bearer YOUR_ACCESS_TOKEN.

Yêu cầu mẫu

Mã sau đây là ví dụ về lệnh gọi yêu cầu SOAP đến getAdUnitsByStatement() tìm kiếm AdUnit gốc.

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope
        xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
        xmlns:xsd="http://www.w3.org/2001/XMLSchema"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <soapenv:Header>
    <ns1:RequestHeader
         soapenv:actor="http://schemas.xmlsoap.org/soap/actor/next"
         soapenv:mustUnderstand="0"
         xmlns:ns1="https://www.google.com/apis/ads/publisher/v202408">
      <ns1:networkCode>123456</ns1:networkCode>
      <ns1:applicationName>DfpApi-Java-2.1.0-dfp_test</ns1:applicationName>
    </ns1:RequestHeader>
  </soapenv:Header>
  <soapenv:Body>
    <getAdUnitsByStatement xmlns="https://www.google.com/apis/ads/publisher/v202408">
      <filterStatement>
        <query>WHERE parentId IS NULL LIMIT 500</query>
      </filterStatement>
    </getAdUnitsByStatement>
  </soapenv:Body>
</soapenv:Envelope>

Lưu ý: Nếu yêu cầu SOAP của bạn gây ra Unmarshalling error, hãy xem bài viết Các lỗi thường gặp để biết các mẹo khắc phục sự cố.

Tiêu đề phản hồi

Tất cả phản hồi được API trả về đều bao gồm các phần tử tiêu đề sau đây. Như phương pháp hay nhất là bạn nên ghi nhật ký các giá trị này.

Phần tử Mô tả
<requestId> Xác định duy nhất yêu cầu này. Nếu bạn có vấn đề cần hỗ trợ, hãy gửi mã này sẽ giúp chúng tôi tìm thấy yêu cầu của bạn dễ dàng hơn.
<responseTime> Thời gian đã trôi qua từ khi dịch vụ web nhận được yêu cầu đến khi gửi của bạn.

Ví dụ về câu trả lời

Đoạn mã sau đây là ví dụ về phản hồi SOAP cho yêu cầu trước đó.

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Header>
    <ResponseHeader xmlns="https://www.google.com/apis/ads/publisher/v202408">
      <requestId>xxxxxxxxxxxxxxxxxxxx</requestId>
      <responseTime>1063</responseTime>
    </ResponseHeader>
  </soap:Header>
  <soap:Body>
    <getAdUnitsByStatementResponse xmlns="https://www.google.com/apis/ads/publisher/v202408">
      <rval>
        <totalResultSetSize>1</totalResultSetSize>
        <startIndex>0</startIndex>
        <results>
          <id>2372</id>
          <name>RootAdUnit</name>
          <description></description>
          <targetWindow>TOP</targetWindow>
          <status>ACTIVE</status>
          <adUnitCode>1002372</adUnitCode>
          <inheritedAdSenseSettings>
            <value>
              <adSenseEnabled>true</adSenseEnabled>
              <borderColor>FFFFFF</borderColor>
              <titleColor>0000FF</titleColor>
              <backgroundColor>FFFFFF</backgroundColor>
              <textColor>000000</textColor>
              <urlColor>008000</urlColor>
              <adType>TEXT_AND_IMAGE</adType>
              <borderStyle>DEFAULT</borderStyle>
              <fontFamily>DEFAULT</fontFamily>
              <fontSize>DEFAULT</fontSize>
            </value>
          </inheritedAdSenseSettings>
        </results>
      </rval>
    </getAdUnitsByStatementResponse>
  </soap:Body>
</soap:Envelope>