การแจ้งเตือน

ใช้ได้เฉพาะใน Google Ad Manager 360 เท่านั้น

เข้าถึงที่เก็บข้อมูลของพื้นที่เก็บข้อมูล Ad Manager

วิธีดาวน์โหลดไฟล์การโอนข้อมูล

Google Cloud Storage คือผลิตภัณฑ์ Google แยกต่างหากที่ Ad Manager ใช้เป็นที่เก็บข้อมูลรายงานการโอนข้อมูลและรหัสคุกกี้กลุ่มเป้าหมายที่อัปโหลดเป็นกลุ่ม

บทความนี้มีไว้เพื่อช่วยให้คุณใช้เทคโนโลยี Google Cloud Storage มาตรฐานในการอินเทอร์เฟซกับการตั้งค่าพื้นที่เก็บข้อมูลระบบคลาวด์เฉพาะของ Ad Manager อย่างไรก็ตาม ข้อมูลอ้างอิงหลักสำหรับ Google Cloud Storage คือเว็บไซต์ของนักพัฒนาซอฟต์แวร์ Google Cloud Storage

วิธีการ

คุณจะเข้าถึงที่เก็บข้อมูลของพื้นที่เก็บข้อมูลระบบคลาวด์ของ Ad Manager ได้ 3 วิธีดังต่อไปนี้ โดยจะเรียงตามลำดับความซับซ้อน

  • ในเว็บ ให้ไปที่ https://console.developers.google.com/storage/gdfp-[รหัสเครือข่าย Ad Manager]
  • gsutil คือเครื่องมือบรรทัดคำสั่งแบบ Python ที่มีคำสั่งเหมือน Unix สำหรับการโต้ตอบกับที่เก็บข้อมูลของพื้นที่เก็บข้อมูล การตรวจสอบสิทธิ์ที่เก็บข้อมูลจะเป็นแบบนามธรรมและจัดการโดยอัตโนมัติ
  • Google Cloud Storage API คือ API ที่มีฟีเจอร์สมบูรณ์สำหรับการควบคุมที่เก็บข้อมูลของพื้นที่เก็บข้อมูลที่พร้อมใช้งานผ่านอินเทอร์เฟซเว็บ JSON หรือ XML RESTful ไลบรารีของไคลเอ็นต์ API พร้อมใช้งานสำหรับสภาพแวดล้อมในการเขียนโปรแกรมยอดนิยมหลายแบบ เช่น Java, JavaScript, Python และ Objective-C วิธีการนี้เป็นประโยชน์มากที่สุดเมื่อคุณต้องควบคุมที่เก็บข้อมูลของพื้นที่เก็บข้อมูลแบบเป็นโปรแกรมเพื่อผสานรวมกับแอป Google App Engine หรือเว็บแอป Java

บทความนี้ให้รายละเอียดเกี่ยวกับ Google Cloud Storage API เราขอแนะนำให้คุณศึกษาวิธีการเหล่านี้ก่อน เนื่องจากการจัดการสิทธิ์เข้าถึงเว็บและ gsutil นั้นทำได้ง่ายกว่า วิธีการเหล่านี้มีการจัดทำเป็นเอกสารไว้อย่างครบถ้วนในเว็บไซต์ของนักพัฒนาซอฟต์แวร์ Google Cloud Storage

จัดการการเข้าถึงที่เก็บข้อมูลของ Ad Manager

ที่เก็บข้อมูลที่ Ad Manager ใช้จะรวมอยู่ในโปรเจ็กต์พื้นที่เก็บข้อมูลระบบคลาวด์ที่ Google เป็นเจ้าของ ที่เก็บข้อมูลของพื้นที่เก็บข้อมูล Ad Manager จะไม่ปรากฏในรายชื่อโปรเจ็กต์ของคุณใน Google Developers Console

คุณจะต้องทำงานร่วมกับตัวแทนของ Google เพื่อตั้งค่าฟีเจอร์ต่างๆ ซึ่งขึ้นอยู่กับที่เก็บข้อมูลของพื้นที่เก็บข้อมูล Ad Manager ซึ่งจะจัดกลุ่ม Google ให้คุณใช้ในการจัดการที่เก็บข้อมูลของพื้นที่เก็บข้อมูล

หากคุณเป็นผู้ดูแลระบบของกลุ่ม G Suite ที่มีอยู่แล้ว ให้แจ้งชื่อกลุ่ม Google ของ G Suite กับตัวแทนในขั้นตอนการเปิดใช้งานฟีเจอร์ ตัวแทนจะทำงานร่วมกับคุณเพื่อเปิดใช้งานฟีเจอร์ที่ใช้ที่เก็บข้อมูลของพื้นที่เก็บข้อมูล Ad Manager โดยใช้กลุ่มที่คุณมีอยู่แล้ว

หากคุณจัดการเครือข่าย Ad Manager มากกว่า 1 เครือข่ายที่มีสิทธิ์เข้าถึงการโอนข้อมูล คุณควรแจ้งเรื่องนี้กับตัวแทน Google เพื่อให้รวมการจัดการเครือข่ายได้ โดยในการจัดการที่เก็บข้อมูลการโอนข้อมูลทั้งหมดในเครือข่ายจะใช้กลุ่ม 1 กลุ่ม

กลุ่ม Google ที่ไม่ได้เป็นส่วนหนึ่งของ G Suite จะใช้ในการจัดการที่เก็บข้อมูลของพื้นที่เก็บข้อมูล Ad Manager ไม่ได้

ใช้ Google Cloud Storage API

หากพิจารณาแล้วว่าการเข้าถึง API เหมาะกับความต้องการของคุณมากที่สุด เราขอแนะนำให้กำหนดค่าบัญชีบริการ Google Cloud Storage

กำหนดค่าบัญชีบริการ Google Cloud Storage

เมื่อเข้าถึงที่เก็บข้อมูลของพื้นที่เก็บข้อมูลผ่าน API คุณควรกำหนดค่าบัญชีบริการแทนที่จะใช้ในบริบทของผู้ใช้ บัญชีบริการช่วยให้พัฒนาแอปพลิเคชันได้ง่ายขึ้นโดยใช้คีย์ส่วนตัวสำหรับการตรวจสอบสิทธิ์แทนโทเค็น OAuth ที่สร้างขึ้นแบบไดนามิก วิธีกำหนดค่าบัญชีบริการมีดังนี้

  1. ไปที่ Google Developer Console

  2. สร้างโปรเจ็กต์ใหม่ (หรือเลือกโปรเจ็กต์ที่มีอยู่แล้ว) เพื่อเป็นไฟล์หลักของแอปพลิเคชันและคลิกโปรเจ็กต์นั้น

  3. (ไม่บังคับ) หากคุณวางแผนที่จะคัดลอกไฟล์จากที่เก็บข้อมูลของพื้นที่เก็บข้อมูล Ad Manager ไปยังบัญชี Google Cloud Storage ของคุณเอง ให้คลิกการเรียกเก็บเงินและการตั้งค่าเพื่อเพิ่มแหล่งที่มาของการเรียกเก็บเงินลงในโปรเจ็กต์

  4. สร้างรหัสไคลเอ็นต์ใหม่

    1. คลิก API และบริการ > ข้อมูลเข้าสู่ระบบ

    2. คลิกสร้างรหัสไคลเอ็นต์ใหม๋

    3. เลือกบัญชีบริการเป็นประเภทแอปพลิเคชัน จากนั้นคลิกสร้างรหัสไคลเอ็นต์

    4. อีเมลที่สร้างขึ้นจะอยู่ในรูปแบบ [unique-id]@developer.gserviceagccount.com ให้คัดลอกและบันทึกไว้เพื่อเพิ่มลงในกลุ่ม Google

    5. คลิกสร้างคีย์ P12 ใหม่ ระบบจะบันทึกไฟล์ไปยังคอมพิวเตอร์ ใช้คีย์นี้ในแอปพลิเคชันที่คุณพัฒนาเพื่อเข้าถึง API ตามที่แสดงในตัวอย่างโค้ดด้านล่าง

  5. เพิ่มอีเมลลงในกลุ่ม Google ที่คุณสร้างขึ้นเพื่อจัดการการเข้าถึงที่เก็บข้อมูลของพื้นที่เก็บข้อมูล Ad Manager คลิกเพิ่มสมาชิกโดยตรงแทนการ "เชิญ" เพื่อเพิ่มบัญชีบริการ หากคุณไม่มีสิทธิ์เข้าถึง ให้ขอให้ผู้ดูแลระบบของกลุ่ม Google เพิ่มอีเมลในนามของคุณ 
ตัวอย่างโค้ด

Google มีตัวอย่างโค้ดและไลบรารีสำหรับ Google Cloud Storage ตัวอย่าง Java สำหรับการอ่านไฟล์จากพื้นที่เก็บข้อมูลระบบคลาวด์ของ Ad Manager ต่อไปนี้จะแสดงให้เห็นว่าคอมโพเนนต์ที่กำหนดค่าไว้ตอนตั้งค่าบัญชีบริการอาจส่งผลต่อโค้ดของคุณอย่างไร

  • ชื่อโปรเจ็กต์: ชื่อโปรเจ็กต์ Google Cloud Storage

  • อีเมลของบัญชีบริการ: อีเมลที่คุณสร้าง

  • ไฟล์คีย์ .p12: ไฟล์ที่คุณดาวน์โหลด

  • ชื่อที่เก็บข้อมูล: Google ให้ชื่อนี้เมื่อคุณเปิดใช้งานฟีเจอร์ที่ใช้พื้นที่เก็บข้อมูลระบบคลาวด์ของ Ad Manager

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.security.GeneralSecurityException;
import java.util.Collections;

import com.google.api.client.googleapis.auth.oauth2.GoogleCredential;
import com.google.api.client.googleapis.javanet.GoogleNetHttpTransport;
import com.google.api.client.http.HttpTransport;
import com.google.api.client.json.jackson2.JacksonFactory;
import com.google.api.services.storage.Storage;
import com.google.api.services.storage.model.StorageObject;

public class GcsApiTest {
    /**
     * ชื่อของโปรเจ็กต์ที่สร้างบัญชีบริการขึ้นมา
     * 
     * ข้อมูลนี้จะแสดงอยู่ภายใต้ Google Developers Console
     */
    private static final String PROJECT_NAME = "project name";

    /**
     * อีเมลของนักพัฒนาซอฟต์แวร์ของบัญชีบริการ
     * อีเมลนี้จะสร้างขึ้นตอนที่สร้างรหัสไคลเอ็นต์บัญชีบริการใน Google Developers Console และจะเรียกดูได้จากหน้าข้อมูลเข้าสู่ระบบ โดยต้องเพิ่มอีเมลนี้ลงในกลุ่ม Google ที่ใช้ควบคุมการเข้าถึงที่เก็บข้อมูลของพื้นที่เก็บข้อมูลด้วย
     */
    private static final String SERVICE_ACCOUNT_EMAIL = "service account email address";

    /**
     * ที่เก็บข้อมูลที่จะใช้สำหรับการทำงานของพื้นที่เก็บข้อมูล
     * 
     * ชื่อของที่เก็บข้อมูลนี้จะได้จากผู้จัดการฝ่ายดูแลลูกค้าของคุณ ชื่อที่ได้จะคล้ายคลึงกับ "gdfp-12345678" หรือ "gdfp_cookieupload_12345678" ทั้งนี้ขึ้นอยู่กับส่วนเสริม Ad Manager ที่คุณใช้อยู่
     */
    private static final String BUCKET_NAME = "bucket name";

    /**
     * ขอบเขต OAuth 2.0 ของ Google Cloud Storage สำหรับการอ่านและเขียน ซึ่งควรสอดคล้องกับสิทธิ์การเข้าถึงที่กลุ่ม Google ของคุณมีสำหรับที่เก็บข้อมูล และคุณจะขอสิทธิ์การเข้าถึงที่ไม่ได้รับอนุญาตให้ใช้กลุ่มไม่ได้ (ซึ่งอาจเป็นแบบอ่านอย่างเดียว)
     */
    private static final String STORAGE_SCOPE = 
        "https://www.googleapis.com/auth/devstorage.read_write";

    /**
     * เส้นทางไปยังไฟล์คีย์ .p12 ที่ให้สิทธิ์เข้าถึงที่เก็บข้อมูล
     * 
     * ไฟล์นี้จะสร้างขึ้นตอนที่สร้างรหัสไคลเอ็นต์ของบริการ หากไม่มีไฟล์นี้ คุณจะต้องสร้างไฟล์คีย์ p12 ของไคลเอ็นต์ใหม่จาก Google Developers Console
     */
    private static final String KEY_P12 = "path to .p12 key file";

    /** HTTP transport. */
    private HttpTransport httpTransport;
    private Storage storage;

    // ตัวสร้าง ตั้งค่าข้อมูลเข้าสู่ระบบและออบเจ็กต์พื้นที่เก็บข้อมูล
    public GcsApiTest() {
	File p12File = new File(KEY_P12);

	ลองใช้ {
	    httpTransport = GoogleNetHttpTransport.newTrustedTransport();

	    GoogleCredential credential = new GoogleCredential.Builder()
		    .setTransport(httpTransport)
		    .setJsonFactory(JacksonFactory.getDefaultInstance())
		    .setServiceAccountId(SERVICE_ACCOUNT_EMAIL)
		    .setServiceAccountScopes(
			    Collections.singleton(STORAGE_SCOPE))
		    .setServiceAccountPrivateKeyFromP12File(p12File).build();
	    storage = new Storage.Builder(httpTransport,
		    JacksonFactory.getDefaultInstance(), credential)
		    .setApplicationName(PROJECT_NAME).build();
	} catch (GeneralSecurityException | IOException e1) {
	    e1.printStackTrace();
	    System.exit(1);
	}
    }

    /**
     * วิธีการแสดงชื่อของไฟล์แรกในที่เก็บข้อมูล
     * 
     * @แสดงชื่อไฟล์หรือ null หากที่เก็บข้อมูลว่างเปล่า
     * @throws IOException
     */
    public String GetFirstFile() throws IOException {
	Storage.Objects.List listObjects = storage.objects().list(BUCKET_NAME);
	listObjects.setMaxResults(5L);
	com.google.api.services.storage.model.Objects objects = listObjects
		.execute();

	// หากที่เก็บข้อมูลว่างเปล่า
	if (null == objects.getItems() || objects.getItems().isEmpty()) {
	    System.out.println("Bucket \"" + BUCKET_NAME
		    + "\" empty or invalid.");
	    return null;
	}

	StorageObject object = objects.getItems().get(0);
	System.out.println("First object in bucket: \"" + object.getName()
		+ "\".");
	return object.getName();
    }

    /**
     * วิธีการดาวน์โหลดไฟล์ที่ระบุจากที่เก็บข้อมูล
     * 
     * @param filename
     *            ชื่อของไฟล์ที่จะต้องดาวน์โหลด
     * @throws IOException
     */
    public void DownloadFile(String filename) throws IOException {
	Storage.Objects.Get getObject = storage.objects().get(BUCKET_NAME,
		filename);
	OutputStream os = new FileOutputStream(filename, true);
	getObject.getMediaHttpDownloader().setDirectDownloadEnabled(true);
	getObject.executeMediaAndDownloadTo(os);

	System.out.println("File \"" + filename + "\" downloaded.");
    }

    /**
     * วิธีหลักในการทำการทดสอบต่างๆ
     * 
     * @param args
     */
    public static void main(String[] args) {
	GcsApiTest gcsApiTest = new GcsApiTest();

	ลองใช้ {
	    String filename = gcsApiTest.GetFirstFile();
	    gcsApiTest.DownloadFile(filename);
	} catch (IOException e) {
	    System.out.println(e.getMessage());
	}
    }
}

การควบคุมและการเชื่อมต่อพร้อมกัน

ไม่มีข้อจำกัดที่กำหนดไว้ล่วงหน้าสำหรับการเชื่อมต่อพร้อมกัน อย่างไรก็ตาม Google จะควบคุมคำขอดึงการโอนข้อมูลเพื่อหลีกเลี่ยงการละเมิด

อ่านส่วน Google Cloud Storage ในบล็อกทางการของ Google Code เพื่อดูข่าวสารล่าสุดและโพสต์คำถามในฟอรัมการสนทนาเกี่ยวกับ Google Cloud Storage เพิ่ม “ข้อบกพร่อง” หรือ “คำขอฟีเจอร์” ในบรรทัดเรื่องตามความเหมาะสม หากมีคำถามเพิ่มเติมเกี่ยวกับ Google Cloud Storage โปรดดูคำถามที่พบบ่อยเกี่ยวกับ Google Cloud Storage

ข้อมูลนี้มีประโยชน์ไหม

เราจะปรับปรุงได้อย่างไร
true
บันทึกประจำรุ่น

อ่านเกี่ยวกับฟีเจอร์ล่าสุดของ Ad Manager และการอัปเดตในศูนย์ช่วยเหลือ

ดูว่ามีอะไรใหม่

ค้นหา
ล้างการค้นหา
ปิดการค้นหา
เมนูหลัก
9996518435920146300
true
ค้นหาศูนย์ช่วยเหลือ
true
true
true
true
true
148
false
false