Google Sites API แบบคลาสสิกช่วยให้แอปพลิเคชันเข้าถึง เผยแพร่ และแก้ไขเนื้อหาภายใน Google Sites ได้ นอกจากนี้ แอปพลิเคชันยังขอรายการกิจกรรมล่าสุด ดึงข้อมูลประวัติการแก้ไข และอัปโหลด/ดาวน์โหลดไฟล์แนบและไฟล์ได้อีกด้วย
ผู้ชม
เอกสารนี้ถือว่าคุณเข้าใจแนวคิดทั่วไปที่อยู่เบื้องหลังโปรโตคอล Google Data API
เอกสารนี้มีไว้สำหรับโปรแกรมเมอร์ที่ต้องการเขียนแอปพลิเคชันไคลเอ็นต์ที่โต้ตอบกับ Google Sites ได้ ซึ่งแสดงชุดตัวอย่างการโต้ตอบพื้นฐานของ Data API โดยใช้ XML/HTTP ดิบพร้อมคําอธิบาย หลังจากอ่านเอกสารนี้ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับการโต้ตอบกับ API โดยใช้ไลบรารีของไคลเอ็นต์ของเรา โดยการอ่านตัวอย่างเฉพาะภาษาที่อยู่ในคำแนะนำอื่นๆ ในแถบนำทางด้านซ้าย
ดูข้อมูลอ้างอิงเกี่ยวกับเนื้อหาในคู่มือนี้ได้ในคู่มืออ้างอิง
การอนุญาตคำขอ
เมื่อแอปพลิเคชันขอข้อมูลผู้ใช้ที่ไม่ใช่ข้อมูลสาธารณะ แอปพลิเคชันจะต้องมีโทเค็นการให้สิทธิ์ โทเค็นดังกล่าวจะระบุตัวตนแอปพลิเคชันของคุณให้ Google ทราบด้วย
เกี่ยวกับโปรโตคอลการให้สิทธิ์
แอปพลิเคชันต้องใช้ OAuth 2.0 เพื่อให้สิทธิ์คำขอ ระบบไม่รองรับโปรโตคอลการให้สิทธิ์อื่นๆ หากแอปพลิเคชันใช้ลงชื่อเข้าใช้ด้วย Google ระบบจะจัดการการให้สิทธิ์บางส่วนแก่คุณ
การให้สิทธิ์คำขอด้วย OAuth 2.0
คำขอไปยัง Google Sites Data API สำหรับข้อมูลผู้ใช้ที่ไม่เป็นสาธารณะจะต้องได้รับสิทธิ์จากผู้ใช้ที่ผ่านการตรวจสอบสิทธิ์แล้ว
รายละเอียดของกระบวนการให้สิทธิ์หรือ "ขั้นตอน" ของ OAuth 2.0 จะแตกต่างกันไปโดยขึ้นอยู่กับประเภทของแอปพลิเคชันที่คุณเขียน แอปพลิเคชันทุกประเภทจะใช้กระบวนการทั่วไปต่อไปนี้
- เมื่อสร้างแอปพลิเคชัน คุณจะลงทะเบียนแอปได้โดยใช้คอนโซล Google API จากนั้น Google จะให้ข้อมูลที่คุณต้องใช้ในภายหลัง เช่น รหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์
- เปิดใช้งาน Google Sites Data API ในคอนโซล Google API (หากไม่เห็น API ดังกล่าวในคอนโซล API ให้ข้ามขั้นตอนนี้ไป)
- เมื่อแอปพลิเคชันต้องการเข้าถึงข้อมูลผู้ใช้ แอปจะขอขอบเขตการเข้าถึงที่จำเป็นจาก Google
- Google จะแสดงหน้าจอขอคำยินยอมแก่ผู้ใช้เพื่อขอให้ผู้ใช้ให้สิทธิ์แอปพลิเคชันของคุณในการขอข้อมูลบางอย่างของผู้ใช้
- หากผู้ใช้อนุมัติ Google จะให้โทเค็นเพื่อการเข้าถึงที่มีอายุชั่วคราวแก่แอปพลิเคชันของคุณ
- แอปพลิเคชันขอข้อมูลผู้ใช้โดยแนบโทเค็นเพื่อการเข้าถึงไปกับคำขอ
- หาก Google ตัดสินว่าคำขอและโทเค็นของคุณถูกต้อง ระบบจะแสดงข้อมูลที่ขอ
บางกระบวนการจะมีขั้นตอนเพิ่มเติม เช่น การใช้โทเค็นการรีเฟรชเพื่อขอโทเค็นเพื่อการเข้าถึงใหม่ ดูข้อมูลอย่างละเอียดเกี่ยวกับกระบวนการของแอปพลิเคชันประเภทต่างๆ ได้ที่เอกสารประกอบเกี่ยวกับ OAuth 2.0 ของ Google
ข้อมูลขอบเขตของ OAuth 2.0 สำหรับ Google Sites Data API มีดังต่อไปนี้
https://sites.google.com/feeds/
หากต้องการขอสิทธิ์โดยใช้ OAuth 2.0 แอปพลิเคชันของคุณต้องมีข้อมูลขอบเขต รวมถึงข้อมูลที่ Google ให้คุณตอนลงทะเบียนแอปพลิเคชัน (เช่น รหัสไคลเอ็นต์และรหัสลับไคลเอ็นต์)
การระบุเวอร์ชัน
คำขอทั้งหมดที่คุณส่งไปยัง Google Sites Data API ควรระบุเวอร์ชัน 1.4 หากต้องการระบุหมายเลขเวอร์ชัน ให้ใช้ส่วนหัว HTTP ของ GData-Version
ดังนี้
GData-Version: 1.4
หรือหากตั้งค่าส่วนหัว HTTP ไม่ได้ คุณสามารถระบุ v=1.4
เป็นส่วนหัวการค้นหาใน URL แต่ขอแนะนำให้ใช้ส่วนหัว HTTP หากเป็นไปได้
หมายเหตุ: ไลบรารีไคลเอ็นต์จะระบุส่วนหัวเวอร์ชันที่เหมาะสมโดยอัตโนมัติ ดังนั้นอย่าใช้พารามิเตอร์การค้นหา v=1.4
เมื่อใช้ไลบรารีไคลเอ็นต์
ฟีดเว็บไซต์
คุณสามารถใช้ฟีดเว็บไซต์เพื่อแสดงรายการ Google Sites ที่ผู้ใช้เป็นเจ้าของหรือมีสิทธิ์ดู รวมถึงแก้ไขชื่อของเว็บไซต์ที่มีอยู่ได้ สำหรับโดเมน G Suite ยังใช้เพื่อสร้างหรือคัดลอกทั้งเว็บไซต์ได้อีกด้วย
เว็บไซต์ข้อมูล
หากต้องการแสดงรายการเว็บไซต์ที่ผู้ใช้มีสิทธิ์เข้าถึง ให้ส่งคําขอ GET
ที่ตรวจสอบสิทธิ์แล้วไปยัง URL ต่อไปนี้
https://sites.google.com/feeds/site/domainName
พารามิเตอร์ฟีด | คำอธิบาย |
---|---|
domainName | "site " หรือโดเมนของโดเมนที่โฮสต์ G Suite (เช่น example.com ) |
การตอบกลับจะมีฟีดที่มีรายการเว็บไซต์ดังนี้
GET /feeds/site/domainName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>https://sites.google.com/feeds/site/site</id> <updated>2009-12-02T17:47:34.406Z</updated> <title>Site</title> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/site/site"/> <link rel="http://schemas.google.com/g/2005#post" type="application/atom+xml" href="https://sites.google.com/feeds/feeds/site/domainName"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName"/> <link rel="next" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/?start-index=2"/> <generator version="1" uri="http://sites.google.com/">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry gd:etag="W/"CkUAQH4_eil7I2A9WxNaFk4.""> <id>https://sites.google.com/feeds/site/site/myTestSite</id> <updated>2009-12-01T01:17:21.042Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-01T01:17:21.042Z</app:edited> <title>myTestSite</title> <summary/> <link rel="alternate" type="text/html" href="http://sites.google.com/site/myTestSite/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/myTestSite"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myTestSite"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myTestSite"/> <sites:siteName>myTestSite</sites:siteName> <sites:theme>default</sites:theme> </entry> <entry gd:etag="W/"DkQGQHczfA9WxNaFk4.""> <id>https://sites.google.com/feeds/site/domainName/myOtherTestSite</id> <updated>2009-12-01T02:25:21.987Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-01T02:25:21.987Z</app:edited> <title>myOtherTestSite</title> <summary>A new site to hold memories</summary> <category scheme="http://schemas.google.com/sites/2008#tag" term="Memories Site"/> <link rel="alternate" type="text/html" href="http://sites.google.com/site/myOtherTestSite"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/myOtherTestSite"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <sites:siteName>myOtherTestSite</sites:siteName> <sites:theme>iceberg</sites:theme> </entry> ... </feed>
เว็บไซต์จะแสดงตามลำดับตัวอักษร
การสร้างเว็บไซต์ใหม่
หมายเหตุ: ฟีเจอร์นี้ใช้ได้กับโดเมน G Suite เท่านั้น
คุณจัดสรรเว็บไซต์ใหม่ได้โดยสร้าง HTTP POST
ไปยังฟีดเว็บไซต์ เช่น
POST /feeds/site/example.com HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008"> <title>Source Site</title> <summary>A new site to hold memories</summary> <sites:theme>slate</sites:theme> </entry>
คำขอข้างต้นจะสร้าง Google Sites ใหม่ที่มีธีม "slate" ภายใต้โดเมน G Suite example.com
URL ของเว็บไซต์จะเป็น http://sites.google.com/a/example.com/source-site/
หากสร้างเว็บไซต์สำเร็จ เซิร์ฟเวอร์จะตอบกลับด้วย 201 Created
รายการคำตอบจะมีองค์ประกอบที่เซิร์ฟเวอร์เพิ่ม เช่น ลิงก์ไปยังเว็บไซต์ ลิงก์ไปยังฟีด ACL ของเว็บไซต์ ชื่อเว็บไซต์ ชื่อ และข้อมูลสรุป
<entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/"DEECR38l7I2A9WxNaF0Q.""> <id>https://sites.google.com/feeds/site/example.com/source-site</id> <updated>2009-12-02T23:31:06.184Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-02T23:31:06.184Z</app:edited> <title>New Test Site</title> <summary>A new site to hold memories</summary> <link rel="alternate" type="text/html" href="http://sites.google.com/a/example.com/source-site/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/example.com/source-site"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <sites:siteName>source-site</sites:siteName> <sites:theme>slate</sites:theme> </entry>
การคัดลอกเว็บไซต์
หมายเหตุ: ฟีเจอร์นี้ใช้ได้กับโดเมน G Suite เท่านั้น
คุณทำซ้ำเว็บไซต์ที่มีอยู่ได้โดยใช้วิธีเดียวกับการสร้างเว็บไซต์ใหม่ อย่างไรก็ตาม ในรายการ Atom ของคำขอ POST
ให้ใส่ <link>
ที่มี rel='source'
ซึ่งชี้ไปยังฟีดเว็บไซต์ของเว็บไซต์ที่จะคัดลอก เว็บไซต์ที่คัดลอกจะมีลิงก์นี้ ตัวอย่างการทําซ้ำเว็บไซต์มีดังนี้
POST /feeds/site/example.com HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom"> <link rel="http://schemas.google.com/sites/2008#source" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <title>Copy of New Test Site</title> <summary>A newer site to hold memories</summary> </entry>
คำขอข้างต้นจะคัดลอกเว็บไซต์ที่ http://sites.google.com/a/example.com/source-site/
ประเด็นสำคัญ
- คุณจะคัดลอกได้เฉพาะเว็บไซต์และเทมเพลตเว็บไซต์ที่ผู้ใช้ที่ตรวจสอบสิทธิ์เป็นเจ้าของ
- นอกจากนี้ คุณยังคัดลอกเทมเพลตเว็บไซต์ได้ด้วย เว็บไซต์จะเป็นเทมเพลตหากเลือกการตั้งค่า "เผยแพร่เว็บไซต์นี้เป็นเทมเพลต" ในหน้าการตั้งค่า Google Sites
- คุณสามารถคัดลอกเว็บไซต์จากโดเมนอื่นได้ ตราบใดที่คุณแสดงตนเป็นเจ้าของในเว็บไซต์ต้นทาง
การอัปเดตข้อมูลเมตาของเว็บไซต์
หากต้องการอัปเดตชื่อหรือข้อมูลสรุปของเว็บไซต์ ให้ส่ง HTTP PUT
ไปยังลิงก์ edit
ของรายการเว็บไซต์
ตัวอย่างเช่น ตัวอย่างต่อไปนี้จะอัปเดตชื่อของเว็บไซต์ก่อนหน้าเป็น New Test Site2
และอัปเดตคำอธิบายเป็น Newer description
PUT /feeds/site/example.com/source-site HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/"DEECR38l7I2A9WxNaF0Q.""> <id>https://sites.google.com/feeds/site/example.com/source-site</id> <updated>2009-12-02T23:31:06.184Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-02T23:31:06.184Z</app:edited> <title>New Test Site2</title> <summary>Newer description</summary> <category scheme="http://schemas.google.com/sites/2008#tag" term="Category"/> <link rel="alternate" type="text/html" href="http://sites.google.com/a/example.com/source-site/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/example.com/source-site"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/source-site"/> <sites:siteName>source-site</sites:siteName> </entry>
การเพิ่มหมวดหมู่
หมายเหตุ: ฟีเจอร์นี้ใช้ได้กับโดเมน G Suite เท่านั้น
เว็บไซต์ G Suite for Domains มีข้อมูลเมตาของหมวดหมู่ที่มีประโยชน์สำหรับการจัดหมวดหมู่เว็บไซต์ภายในโดเมน หากต้องการเพิ่มหรืออัปเดตข้อมูลเมตาของหมวดหมู่ ให้ส่ง HTTP PUT
ไปยังลิงก์ edit
ของรายการเว็บไซต์ที่มีแท็ก category
โปรดดูเส้นตัวหนาในตัวอย่างต่อไปนี้
PUT /feeds/site/example.com/source-site HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/"DEECR38l7I2A9WxNaF0Q.""> <id>https://sites.google.com/feeds/site/example.com/source-site</id> <updated>2009-12-02T23:31:06.184Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-02T23:31:06.184Z</app:edited> <title>My Team website</title> <summary>This site contains contact information and a summary of major efforts our team owns</summary> <category scheme="http://schemas.google.com/sites/2008#tag" term="Team Site"/> <link rel="alternate" type="text/html" href="http://sites.google.com/a/example.com/my-team-site/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/example.com/my-team-site"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/my-team-site"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/my-team-site"/> <sites:siteName>my-team-site</sites:siteName> </entry>
ตัวอย่างนี้แก้ไขเว็บไซต์ที่มีอยู่และเพิ่มหมวดหมู่ "เว็บไซต์ของทีม"
นอกจากนี้ คุณยังเพิ่มหมวดหมู่ได้หลายรายการโดยเพิ่มแท็ก <category>
อีก ดูบรรทัดหนาในตัวอย่างต่อไปนี้
PUT /feeds/site/example.com/my-team-site HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0" gd:etag="W/"DEECR38l7I2A9WxNaF0Q.""> <id>https://sites.google.com/feeds/site/example.com/my-team-site</id> <updated>2009-12-02T23:31:06.184Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-02T23:31:06.184Z</app:edited> <title>My Team website</title> <summary>This site contains contact information and a summary of major efforts our team owns</summary> <category scheme="http://schemas.google.com/sites/2008#tag" term="Team Site/"> <category scheme="http://schemas.google.com/sites/2008#tag" term="Legal Department/"> <link rel="alternate" type="text/html" href="http://sites.google.com/a/example.com/my-team-site/"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/example.com/my-team-site"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/my-team-site"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/example.com/my-team-site"/> <sites:siteName>my-team-site</sites:siteName> </entry>
ตัวอย่างนี้จะเพิ่ม 2 หมวดหมู่ ได้แก่ "เว็บไซต์ของทีม" และ "แผนกกฎหมาย"
การแมปที่อยู่เว็บ
การจับคู่ที่อยู่เว็บจะช่วยให้ผู้ใช้ Sites สามารถจับคู่โดเมนของตนเองกับ Google Sites ได้ เช่น คุณใช้ http://www.mydomainsite.com
แทน http://sites.google.com/a/domain.com/mysite
ได้ คุณแก้ไขการแมปที่อยู่เว็บของเว็บไซต์ด้วยตนเองได้ ทั้งนี้ขึ้นอยู่กับตำแหน่งที่โฮสต์เว็บไซต์ ดูข้อมูลเพิ่มเติมได้จากบทความในศูนย์ช่วยเหลือ
การดึงข้อมูลการแมปที่อยู่เว็บของเว็บไซต์
หากต้องการแสดงการแมปที่อยู่เว็บของเว็บไซต์ ให้ดึงข้อมูลรายการ/ฟีดเว็บไซต์ด้วยพารามิเตอร์ with-mappings=true
ดังนี้
GET /feeds/site/domainName?with-mappings=true HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> ... <entry gd:etag="W/"DkQGQHczfA9WxNaFk4.""> <id>https://sites.google.com/feeds/site/domainName/myOtherTestSite</id> <updated>2009-12-01T02:25:21.987Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-01T02:25:21.987Z</app:edited> <title>myOtherTestSite</title> <summary>A new site to hold memories</summary> <link rel="alternate" type="text/html" href="http://sites.google.com/site/myOtherTestSite"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/myOtherTestSite"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel='webAddressMapping' href='http://www.mysitemapping.com'> <link rel='webAddressMapping' href='http://www.mysitemapping2.com'> <link rel='webAddressMapping' href='http://www.myothermapping.org'> </entry> ... </feed>
การแมปที่มีอยู่จะแสดงเป็น link
ที่มี rel='webAddressMapping' เช่น ในตัวอย่างข้างต้น มี webAddressMapping
3 ตัวที่ชี้ไปยังเว็บไซต์ http://sites.google.com/site/myOtherTestSite
การแก้ไขการแมปที่อยู่เว็บ
หมายเหตุ: การดำเนินการ GET/POST/PUT ทั้งหมดควรระบุพารามิเตอร์ with-mappings=true
เมื่อดำเนินการกับการแมปที่อยู่เว็บ หากไม่มีพารามิเตอร์นี้ ระบบจะไม่แสดง webAddressMapping
ในรายการเว็บไซต์ (GET) หรือพิจารณาเมื่ออัปเดต/นําการแมป (PUT) ออกจากรายการ
หากต้องการเพิ่ม อัปเดต หรือลบการแมป ให้ระบุ เปลี่ยนแปลง หรือนําลิงก์ดังกล่าวออกเมื่อสร้างเว็บไซต์ใหม่หรืออัปเดตข้อมูลเมตาของเว็บไซต์ พารามิเตอร์ with-mappings=true
ต้องรวมอยู่ใน URI ฟีดเว็บไซต์
หมายเหตุ: หากต้องการอัปเดตการแมปที่อยู่ คุณต้องเป็นผู้ดูแลระบบเว็บไซต์หรือผู้ดูแลระบบโดเมนในกรณีที่เป็นเว็บไซต์ที่โฮสต์ใน G Suite
ตัวอย่างเช่น คําขอด้านล่างจะอัปเดตการแมป http://www.mysitemapping.com
เป็น http://www.my-new-sitemapping.com
และนํา http://www.mysitemapping2.com
ออกโดยไม่ใส่ลิงก์ไว้ในรายการ
PUT /feeds/site/domainName?with-mappings=true HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry gd:etag="W/"DkQGQHczfA9WxNaFk4.""> <id>https://sites.google.com/feeds/site/domainName/myOtherTestSite</id> <updated>2009-12-01T02:25:21.987Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-01T02:25:21.987Z</app:edited> <title>myOtherTestSite</title> <summary>A new site to hold memories</summary> <link rel="alternate" type="text/html" href="http://sites.google.com/site/myOtherTestSite"/> <link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/myOtherTestSite"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/site/domainName/myOtherTestSite"/> <link rel='webAddressMapping' href='www.my-new-sitemapping.com'> <!-- missing mapping2 will be deleted --> <link rel='webAddressMapping' href='http://www.myothermapping.org'> </entry>
โปรดทราบว่าคุณระบุการแมปที่อยู่เว็บได้ในขณะที่สร้าง/คัดลอกเว็บไซต์
ฟีดกิจกรรม
คุณสามารถดึงข้อมูลกิจกรรมล่าสุด (การเปลี่ยนแปลง) ของเว็บไซต์โดยการดึงข้อมูลฟีดกิจกรรม รายการแต่ละรายการในฟีดกิจกรรมจะมีข้อมูลเกี่ยวกับการเปลี่ยนแปลงที่ทำในเว็บไซต์
ในการค้นหาฟีดกิจกรรม ให้ส่ง HTTP GET
ไปยัง URL ของฟีดกิจกรรม
https://sites.google.com/feeds/activity/domainName/siteName
พารามิเตอร์ฟีด | คำอธิบาย |
---|---|
domainName | "site " หรือโดเมนของโดเมนที่โฮสต์ G Suite (เช่น example.com ) |
siteName | ชื่อพื้นที่เว็บของเว็บไซต์ ซึ่งดูได้ใน URL ของเว็บไซต์ (เช่น myCoolSite ) |
ตัวอย่างคำขอและการตอบกลับ
GET /feeds/activity/site/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/"> <id>https://sites.google.com/feeds/activity/site/siteName</id> <updated>2009-09-10T05:24:23.120Z</updated> <title>Activity</title> <link rel="alternate" type="text/html" href="http://sites.google.com/site/siteName/system/app/pages/recentChanges"/> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName"/> <generator version="1" uri="http://sites.google.com">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/"CU4GQ3szfSl7ImA9WxNRFUg.""> <id>https://sites.google.com/feeds/activity/site/siteName/940375996952876062</id> <updated>2009-09-10T03:38:42.585Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#deletion" label="deletion"/> <title>home</title> <summary type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">User deleted <a href="http://sites.google.com/site/siteName/home">home</a> </div> </summary> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/site/siteName/5409745539831916487"/> <link rel="http://schemas.google.com/sites/2008#current" type="application/atom+xml" href="https://sites.google.com/feeds/content/site/siteName/5409745539831916487"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName/940375996952876062"/> <author> <name>User</name> <email>user@gmail.com</email> </author> </entry> <entry xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/"CU8DQn45fyl7ImA9WxNRFUg.""> <id>https://sites.google.com/feeds/activity/site/siteName/7165439066235480082</id> <updated>2009-09-10T03:37:53.027Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#edit" label="edit"/> <title>home</title> <summary type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">User2 edited <a href="http://sites.google.com/site/siteName/home">home</a> </div> </summary> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/site/siteName/5409745539831916487"/> <link rel="http://schemas.google.com/sites/2008#current" type="application/atom+xml" href="https://sites.google.com/feeds/content/site/siteName/5409745539831916487"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName/7165439066235480082"/> <author> <name>User</name> <email>user@gmail.com</email> </author> </entry> <entry xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/"CU8AR3s4cSl7ImA9WxNRFUg.""> <id>https://sites.google.com/feeds/activity/site/siteName/127448462987345884</id> <updated>2009-09-10T03:37:26.539Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#creation" label="creation"/> <title>home</title> <summary type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">User3 created <a href="http://sites.google.com/site/siteName/home">home</a> </div> </summary> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/site/siteName/5409745539831916487"/> <link rel="http://schemas.google.com/sites/2008#current" type="application/atom+xml" href="https://sites.google.com/feeds/content/site/siteName/5409745539831916487"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/activity/site/siteName/127448462987345884"/> <author> <name>User3</name> <email>user3@gmail.com</email> </author> </entry> </feed>
หมายเหตุ: คุณต้องเป็นผู้ทำงานร่วมกันหรือเจ้าของเว็บไซต์จึงจะเข้าถึงฟีดนี้ได้
ไคลเอ็นต์ต้องส่งส่วนหัว Authorization
ที่ถูกต้องและอ้างอิงโทเค็นที่ได้รับในคำขอการให้สิทธิ์
ฟีดการแก้ไข
หากต้องการเรียกประวัติการแก้ไขสำหรับรายการเนื้อหา ให้ส่ง HTTP GET
ไปยังลิงก์การแก้ไขของรายการ ดังนี้
https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID
พารามิเตอร์ฟีด | คำอธิบาย |
---|---|
domainName | "site " หรือโดเมนของโดเมนที่โฮสต์ G Suite (เช่น example.com ) |
siteName | ชื่อพื้นที่เว็บของเว็บไซต์ ซึ่งดูได้จาก URL ของเว็บไซต์ (เช่น myCoolSite ) |
หากต้องการค้นหาลิงก์การแก้ไขสำหรับหน้าเว็บ/ความคิดเห็น/ไฟล์แนบ/รายการที่ระบุ ให้ดึงข้อมูลรายการจากฟีดเนื้อหาโดยใช้ CONTENT_ENTRY_ID ก่อน รายการที่ดึงข้อมูลจะมี <atom:link>
ไปยังฟีดการแก้ไข
เช่น
<link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID"/>
ตัวอย่างคําขอและการตอบกลับ
GET /feeds/revision/domainName/siteName/CONTENT_ENTRY_ID HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID</id> <updated>2009-09-10T04:33:35.337Z</updated> <title>Revisions</title> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID"/> <generator version="1" uri="http://sites.google.com">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry gd:etag="W/"CU4GQmA9WxNRFUg.""> <id>https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID/2</id> <updated>2009-09-10T03:38:42.045Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>Home</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Latest content here</div> </content> <link rel="alternate" type="text/html" href="http://sites.google.com/domainName/siteName/CONTENT_ENTRY_ID/system/app/pages/admin/compare?wuid=wuid%3Agx%3A4f67c7&rev1=2"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID/2"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <sites:pageName>home</sites:pageName> <sites:revision>2</sites:revision> </entry> <entry gd:etag="W/"CU8DQ388eSl7ImA9WxNRFUg.""> <id>https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID/1</id> <updated>2009-09-10T03:37:52.171Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>Home</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Older content here</div> </content> <link rel="alternate" type="text/html" href="http://sites.google.com/domainName/siteName/CONTENT_ENTRY_ID/system/app/pages/admin/compare?wuid=wuid%3Agx%3A4bc7&rev1=1"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/CONTENT_ENTRY_ID/1"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <sites:pageName>home</sites:pageName> <sites:revision>1</sites:revision> </entry> </feed>
หมายเหตุ: คุณต้องเป็นผู้ทำงานร่วมกันหรือเจ้าของเว็บไซต์จึงจะเข้าถึงฟีดนี้ได้
ไคลเอ็นต์ต้องส่งส่วนหัว Authorization
ที่ถูกต้องและอ้างอิงโทเค็นที่ได้มาจากการให้สิทธิ์คำขอ
ฟีดเนื้อหา
กำลังเรียกเนื้อหา
ฟีดเนื้อหาจะแสดงเนื้อหาปัจจุบันของเว็บไซต์ ส่งคำขอ GET
ที่ตรวจสอบสิทธิ์แล้วไปยัง URL ต่อไปนี้
https://sites.google.com/feeds/content/domainName/siteName
พารามิเตอร์ฟีด | คำอธิบาย |
---|---|
domainName | "site " หรือโดเมนของโดเมนที่โฮสต์ G Suite (เช่น example.com ) |
siteName | ชื่อเว็บสเปซของเว็บไซต์ของคุณ ซึ่งพบใน URL ของเว็บไซต์ (เช่น myCoolSite ) |
ผลลัพธ์ที่ได้คือฟีดที่แสดงหน้าแรกของรายการเนื้อหาในเว็บไซต์ แต่ละรายการในฟีดจะแสดงรายการเนื้อหาประเภทต่างๆ เช่น webpage
, filecabinet
, attachment
, comment
เป็นต้น องค์ประกอบ <category scheme="http://schemas.google.com/g/2005#kind">
จะกำหนดประเภทของรายการ โปรดดูรายการค่า kind
ของการสนับสนุนในคู่มืออ้างอิง
หมายเหตุ: ฟีดนี้อาจต้องตรวจสอบสิทธิ์หรือไม่ก็ได้ โดยขึ้นอยู่กับสิทธิ์การแชร์ของเว็บไซต์
หากเว็บไซต์ไม่ใช่แบบสาธารณะ ลูกค้าต้องส่งส่วนหัว Authorization
ที่ถูกต้อง (ตามที่แสดงในตัวอย่างด้านบน) และอ้างอิงโทเค็นที่ได้รับในคำขอการให้สิทธิ์
GET /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> HTTP/1.1 200 OK <?xml version="1.0" encoding="UTF-8"?> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>https://sites.google.com/feeds/content/domainName/siteName</id> <updated>2009-08-31T01:39:20.286Z</updated> <title>Content</title> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName"/> <link rel="http://schemas.google.com/g/2005#post" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName"/> <link rel="http://schemas.google.com/g/2005#batch" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/batch""/> <link rel="next" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/?start-index=2"/> <generator version="1" uri="http://sites.google.com">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry gd:etag="W/"Ck8GQXk7fil7ImA9WxNSFk0.""> <id>https://sites.google.com/feeds/content/domainName/siteName/7322156894</id> <updated>2009-08-30T02:53:40.706Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-30T02:53:40.706Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>Subpage</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Page html content here</div> </content> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/6492205817"/> <link rel="alternate" type="text" href="http://sites.google.com/site/siteName/subpage"/> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/7322156894"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/7322156894"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/7322156894"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <sites:pageName>subpage</sites:pageName> <sites:revision>5</sites:revision> </entry> <entry gd:etag="W/"CkMBQH08fCl7ImA9WxNSFk0.""> <id>https://sites.google.com/feeds/content/domainName/siteName/5930635231</id> <updated>2009-08-30T02:47:31.374Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-30T02:47:31.374Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#listitem" label="listpage"/> <title/> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/5930635231"/> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/5930635231"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/5930635231"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/5930635231"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <sites:revision>1</sites:revision> <gs:field index="A" name="Issue/Feature">Implement cool feature X</gs:field> <gs:field index="B" name="Priority">P2</gs:field> <gs:field index="C" name="Owner"/> <gs:field index="D" name="Resolved"/> </entry> <entry gd:etag="W/"AkYHQ3ozcCl7ImA9WxJaE08.""> <id>https://sites.google.com/feeds/content/domainName/siteName/1265948545471894517</id> <updated>2009-08-03T19:35:32.488Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-08-03T19:35:32.488Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#filecabinet" label="filecabinet"/> <title>files</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Page html content here</div> </content> <link rel="alternate" type="text" href="https://sites.google.com/domainName/siteName/files"/> <link rel="http://schemas.google.com/sites/2008#revision" type="application/atom+xml" href="https://sites.google.com/feeds/revision/domainName/siteName/12671894517"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/12671894517"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/12671894517"/> <author> <name>User</name> <email>user@gmail.com</email> </author> <gd:feedLink href="httpn://sites.google.com/feeds/content/domainName/siteName?parent=12671894517"/> <sites:pageName>files</sites:pageName> <sites:revision>1</sites:revision> </entry> ... </feed>
หมายเหตุ: นี่เป็นเพียงผลลัพธ์ 2-3 รายการแรกเท่านั้น หากต้องการเลื่อนดูฟีดเนื้อหาทั้งหมด ให้ทำตามลิงก์ "ถัดไป" ของฟีด
<link rel="next" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/?start-index=2"/>
ดูคำอธิบายองค์ประกอบทั่วไปของ Atom ได้ที่ข้อมูลอ้างอิง Google Data Protocol
องค์ประกอบที่มีความหมายเฉพาะสำหรับ Sites API แบบคลาสสิกจะอธิบายไว้ด้านล่าง รายการบางประเภทจะมีพร็อพเพอร์ตี้เพิ่มเติม (ไม่ได้แสดงด้านล่าง) ขณะที่รายการอื่นๆ จะไม่มี เช่น รายการ listitem
อาจมีองค์ประกอบ <gs:field>
แต่รายการ webpage
จะไม่มี
องค์ประกอบ | คำอธิบาย |
---|---|
<content ...> | ข้อความด้านในคือเนื้อหา HTML ของหน้า สำหรับรายการบางรายการ (เช่น ไฟล์แนบ) องค์ประกอบนี้จะมีแอตทริบิวต์ src ที่ชี้ไปยังไฟล์ |
<link rel="alternate" ...> | ลิงก์ไปยังหน้าหรือรายการใน Google Sites |
<link rel="http://schemas.google.com/sites/2008#revision" ...> | แอตทริบิวต์ href ชี้ไปยังฟีดการแก้ไขของรายการ |
<link rel="http://schemas.google.com/sites/2008#parent" ...> | แอตทริบิวต์ href ชี้ไปยังรายการหลักของรายการ |
<link rel="http://schemas.google.com/sites/2008#template" ...> | แอตทริบิวต์ href จะชี้ไปยังหน้าเทมเพลตของรายการ |
<category scheme="http://schemas.google.com/g/2005#kind" ...> | label คือประเภทของรายการ |
<category term="http://schemas.google.com/g/2005#template" ...> | label=template หมายถึงรายการนั้นเป็นเทมเพลต |
<gd:feedLink> | แอตทริบิวต์ href จะชี้ไปยังรายการย่อยของรายการหลัก |
<sites:pageName> | ชื่อพื้นที่เว็บของหน้าเว็บ ซึ่งสอดคล้องกับชื่อใน URL ของหน้าเว็บ |
<sites:revision> | หมายเลขการแก้ไขปัจจุบัน |
ตัวอย่างการค้นหาฟีดเนื้อหา
คุณสามารถค้นหาฟีดเนื้อหาได้โดยใช้พารามิเตอร์การค้นหา Google Data API มาตรฐานและพารามิเตอร์เฉพาะสำหรับ Sites API แบบคลาสสิก ดูข้อมูลโดยละเอียดและรายการพารามิเตอร์ที่รองรับทั้งหมดได้ในคู่มืออ้างอิง
กำลังดึงข้อมูลประเภทรายการที่เจาะจง
หากต้องการดึงข้อมูลเฉพาะรายการบางประเภท ให้ใช้พารามิเตอร์ kind
ตัวอย่างนี้จะแสดงผลเพียง webpage
รายการเท่านั้น
GET /feeds/content/domainName/siteName?kind=webpage
หากต้องการแสดงผลรายการมากกว่า 1 ประเภท ให้คั่น kind
แต่ละรายการด้วย ',' ตัวอย่างนี้จะแสดงรายการ filecabinet
และ listpage
:
GET /feeds/content/domainName/siteName?kind=filecabinet,listpage
คุณสามารถใช้รูปแบบมาตรฐานสำหรับการค้นหา /-/category
ใน Google Data แทนพารามิเตอร์ kind
ดังนี้
GET /feeds/content/domainName/siteName/-/filecabinet|listpage
กำลังเรียกดูเทมเพลตหน้าเว็บ
ตัวอย่างนี้จะแสดงผลเพียง template
หน้าเท่านั้น
GET /feeds/content/domainName/siteName/-/template
หากต้องการแสดงรายการทุกประเภทและรวมหน้า template
ให้ใช้คำสั่งต่อไปนี้
GET /feeds/content/domainName/siteName/-/template|-template
การดึงข้อมูลหน้าเว็บตามเส้นทาง
หากคุณทราบเส้นทางที่เกี่ยวข้องของหน้าเว็บภายในเว็บไซต์จาก Google Sites คุณสามารถใช้พารามิเตอร์ path
เพื่อดึงข้อมูลหน้าเว็บนั้นๆ ได้
ตัวอย่างนี้จะแสดงหน้าเว็บที่อยู่ที่
http://sites.google.com/site/siteName/path/to/the/page
GET /feeds/content/domainName/siteName?path=/path/to/the/page
การดึงข้อมูลรายการทั้งหมดในหน้าหลัก
หากคุณทราบรหัสรายการของหน้าเว็บ ให้ใช้พารามิเตอร์ parent
เพื่อดึงข้อมูลรายการย่อยทั้งหมด (หากมี) ดังนี้
GET /feeds/content/domainName/siteName?parent=CONTENT_ENTRY_ID
รวมถึงรายการร่างหรือรายการที่ลบไปแล้ว
หากต้องการรวมรายการฉบับร่างหรือรายการที่ถูกลบ ให้ใช้พารามิเตอร์ include-drafts
หรือ include-deleted
ตามลำดับ
ตัวอย่างนี้แสดงรายการฉบับร่างในฟีดเนื้อหา
GET /feeds/content/domainName/siteName?include-drafts=true
การค้นหาข้อความแบบเต็ม
หากต้องการค้นหาเนื้อหาทั้งหมดของเว็บไซต์ ให้ใช้พารามิเตอร์ q
เพื่อค้นหาข้อความแบบเต็ม
GET /feeds/content/domainName/siteName?q=Text%20I%20am%20looking%20for
การสร้างเนื้อหา
คุณสามารถสร้างเนื้อหาใหม่ (หน้าเว็บ หน้ารายการ หน้าตู้เก็บเอกสาร หน้าประกาศ ฯลฯ) โดยส่ง HTTP POST
ไปยังฟีดเนื้อหา
https://sites.google.com/feeds/content/domainName/siteName
ดูรายการประเภทรายการที่รองรับได้ที่พารามิเตอร์ kind
ในคู่มืออ้างอิง
การสร้างรายการ/หน้าใหม่
ตัวอย่างนี้จะสร้าง webpage
ใหม่ในส่วนระดับบนสุดของเว็บไซต์ รวมถึง XHTML บางส่วนสําหรับเนื้อหาหน้าเว็บ และตั้งชื่อส่วนหัวเป็น "ชื่อหน้าเว็บใหม่"
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 328 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>New Webpage Title</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">HTML body goes here</div> </content> </entry>
หากสำเร็จ เซิร์ฟเวอร์จะตอบกลับด้วย 201 Created
และสำเนาของรายการ
การสร้างรายการ/หน้าเว็บภายใต้เส้นทาง URL ที่กําหนดเอง
โดยค่าเริ่มต้น ระบบจะสร้างตัวอย่างก่อนหน้าใน URL http://sites.google.com/domainName/siteName/new-webpage-title
และมีส่วนหัวของหน้าเป็น "ชื่อหน้าเว็บใหม่" กล่าวคือ ระบบจะทำให้ <atom:title>
เป็นค่ามาตรฐาน new-webpage-title
สำหรับ URL
หากต้องการปรับแต่งเส้นทาง URL ของหน้าเว็บ คุณตั้งค่าองค์ประกอบ <sites:pageName>
ได้
ตัวอย่างนี้สร้าง filecabinet
ใหม่ที่มีส่วนหัวหน้าเป็น "File Storage" แต่สร้างหน้าภายใต้ URL http://sites.google.com/domainName/siteName/files
ด้วยการระบุเอลิเมนต์ <sites:pageName>
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 393 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#filecabinet" label="filecabinet"/> <title>File Storage</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">A list of files is below.</div> </content> <sites:pageName>files</sites:pageName> </entry>
เซิร์ฟเวอร์ใช้กฎที่มีลำดับความสำคัญต่อไปนี้ในการตั้งชื่อเส้นทาง URL ของหน้าเว็บ
<sites:pageName>
(หากมี) ต้องเป็นไปตามเงื่อนไขa-z, A-Z, 0-9, -, _
<atom:title>
ต้องไม่เป็น null หากไม่มี pageName การปรับให้เป็นมาตรฐานคือการตัด + ยุบช่องว่างเป็น "-" และนำอักขระที่ไม่ตรงกับa-z, A-Z, 0-9, -, _
ออก
ตัวอย่างเช่น เซิร์ฟเวอร์จะยอมรับ "Custom_Page2"
การสร้างหน้าย่อย
หากต้องการสร้างหน้าย่อย (หน้าลูก) ภายใต้หน้าหลัก ให้ใส่ <link rel="http://schemas.google.com/sites/2008#parent">
ในรายการ Atom ใหม่ ตั้งค่าแอตทริบิวต์ href
ของลิงก์เป็นลิงก์ไปยังตัวเองของรายการหลัก
ตัวอย่างนี้จะสร้าง announcement
ใหม่ที่มีส่วนหัว "ประกาศ" ภายใต้หน้าประกาศหลักที่มีรหัสรายการ PARENT_ENTRY_ID
เนื้อหา XHTML สำหรับเนื้อหาของหน้าเว็บจะรวมอยู่ด้วย
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 470 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#announcement" label="announcement"/> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/PARENT_ENTRY_ID"/> <title>announcement</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">This weekend. My place.</div> </content> </entry>
เทมเพลตของหน้าเว็บ
การสร้างเทมเพลตของหน้าเว็บ
กระบวนการสร้างเทมเพลตหน้าเว็บจะเหมือนกับการสร้างรายการ/หน้าเว็บใหม่และการสร้างหน้าย่อย ความแตกต่างคือการเพิ่ม category
ที่มีการตั้งค่าคําและป้ายกํากับเป็น "http://schemas.google.com/g/2005#template" และ "template" ตามลําดับ
ตัวอย่างนี้สร้างเทมเพลต webpage
ใหม่
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 464 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <category scheme="http://schemas.google.com/g/2005#labels" term="http://schemas.google.com/g/2005#template" label="template"/> <title>Webpage Template</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">This weekend. My place.</div> </content> </entry>
การสร้างหน้าเว็บจากเทมเพลต
คุณสามารถสร้างอินสแตนซ์หน้าใหม่จากเทมเพลตได้เช่นเดียวกับการสร้างเทมเพลตหน้าเว็บ โดยใส่ <link>
ที่มี rel='http://schemas.google.com/sites/2008#template' ซึ่งชี้ไปที่ลิงก์ไปยังหน้าเว็บเทมเพลต
ตัวอย่างนี้จะสร้างหน้า filecabinet
ใหม่จากเทมเพลตหน้าเว็บที่มีอยู่ซึ่งกำหนดตู้เก็บเอกสาร
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 464 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#filecabinet" label="filecabinet"/> <title>File Cabinet Page From Template</title> <link rel='http://schemas.google.com/sites/2008#template' type='application/atom+xml' href='https://sites.google.com/feeds/content/domainName/siteName/ENTRY_ID'/> </entry>
หมายเหตุ: แม้ว่าเทมเพลตจะกำหนด <category>
ไว้แล้ว คุณก็ยังต้องใส่ <category>
ไว้ในรายการ นอกจากนี้ โปรดทราบว่าหากใส่องค์ประกอบ <content>
ไว้ด้วย เซิร์ฟเวอร์จะปฏิเสธ
กำลังอัปโหลดไฟล์
API นี้ช่วยให้คุณสามารถอัปโหลดไฟล์แนบไปยังหน้าจัดการไฟล์และหน้าหลักได้เช่นเดียวกับใน Google Sites
หากต้องการอัปโหลดไฟล์แนบไปยังผู้ปกครอง ให้ส่งคำขอ HTTP POST
ไปยัง URL ของฟีดเนื้อหา โดยทำดังนี้
https://sites.google.com/feeds/content/domainName/siteName
เนื้อความของ POST
ควรเป็นคำขอ MIME แบบหลายส่วน เพื่อรวมเนื้อหาไฟล์เข้ากับ <atom:entry>
ที่มีข้อมูลเมตาของไฟล์แนบ <atom:entry>
ควรอ้างอิงลิงก์ไปยังตัวเองของรายการหลัก เพื่อระบุตำแหน่งที่จะสร้างไฟล์แนบ
ดูข้อมูลเพิ่มเติมได้ที่การสร้างหน้าย่อย
กำลังอัปโหลดไฟล์
ต่อไปนี้คือตัวอย่างของการอัปโหลดไฟล์ PDF ไปยังหน้าจัดการไฟล์ที่มีรหัส PARENT_ENTRY_ID
ระบบจะสร้างไฟล์แนบที่มีชื่อ "ไฟล์ PDF" และคำอธิบาย (ไม่บังคับ) "แพ็กเกจ HR"
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 7221984 Content-Type: multipart/related; boundary=END_OF_PART --END_OF_PART Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#attachment" label="attachment"/> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/PARENT_ENTRY_ID"/> <title>PDF File</title> <summary>HR packet</summary> </entry> --END_OF_PART Content-Type: application/pdf ... pdf contents here ... --END_OF_PART--
หากการอัปโหลดสำเร็จ เซิร์ฟเวอร์จะตอบกลับด้วย 201 Created
และสำเนาของรายการไฟล์แนบที่สร้างขึ้นใหม่
อัปโหลดไฟล์แนบไปยังโฟลเดอร์
หากต้องการอัปโหลดไฟล์แนบไปยังโฟลเดอร์ที่มีอยู่ใน filecabinet
ให้ใส่หมวดหมู่ที่มีการตั้งค่าแอตทริบิวต์ "term" เป็นชื่อของโฟลเดอร์ ดังนี้
<category scheme="http://schemas.google.com/sites/2008#folder" term="FolderName">
ไฟล์แนบในเว็บ
ไฟล์แนบในเว็บเป็นไฟล์แนบประเภทพิเศษ โดยพื้นฐานแล้ว ลิงก์เหล่านี้คือลิงก์ไปยังไฟล์อื่นๆ บนเว็บที่คุณสามารถเพิ่มลงในข้อมูลใน File Cabinet ได้ ฟีเจอร์นี้คล้ายกับวิธีการอัปโหลด "เพิ่มไฟล์ด้วย URL" ใน UI ของ Google Sites
หมายเหตุ: คุณสร้างไฟล์แนบในเว็บได้เฉพาะในตู้เก็บเอกสารเท่านั้น แต่อัปโหลดไปยังหน้าประเภทอื่นๆ ไม่ได้
ตัวอย่างนี้จะสร้าง webattachment
ภายใต้ตู้เก็บเอกสารที่อ้างอิงโดยรหัส FILECABINET_ENTRY_ID
ระบบตั้งค่าชื่อและคำอธิบาย (ไม่บังคับ) เป็น "GoogleLogo" และ "nice colors" ตามลำดับ
POST /feeds/content/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Type: application/atom+xml Content-Length: 531 <entry xmlns="http://www.w3.org/2005/Atom"> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webattachment" label="webattachment"/> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/FILECABINET_ENTRY_ID"/> <title>GoogleLogo</title> <summary>nice colors</summary> <content type="image/gif" src="http://www.google.com/images/logo.gif"></content> </entry>
POST
จะสร้างลิงก์ในตู้เก็บเอกสารของผู้ใช้ซึ่งชี้ไปยังรูปภาพใน "http://www.google.com/images/logo.gif"
การอัปเดตเนื้อหา
คุณสามารถแก้ไขข้อมูลเมตา (ชื่อ pageName ฯลฯ) และเนื้อหาหน้าเว็บของหน้าใดก็ได้ด้วยคําขอ PUT
รายการเดียวไปยังลิงก์ edit
เนื้อหาของคำขอควรมีรายการ Atom ที่อธิบายหน้าเว็บที่อัปเดต ข้อยกเว้นสำหรับกฎนี้คือรายการไฟล์แนบ ซึ่งรายการนี้สามารถใช้เพื่ออัปเดตข้อมูลเมตาของไฟล์แนบเท่านั้น
หากต้องการเปลี่ยนเนื้อหาของไฟล์แนบ ให้ใส่ข้อมูลดิบเป็นเนื้อหาของPUT
คำขอไปยังedit-media
ลิงก์ของไฟล์แนบ นอกจากนี้ คุณยังอัปเดตทั้งข้อมูลเมตาและเนื้อหาไฟล์แนบพร้อมกันได้โดยใช้คำขอที่มีหลายส่วนของ MIME
หากต้องการยืนยันว่าการอัปเดตของคุณจะไม่เขียนทับการเปลี่ยนแปลงของไคลเอ็นต์รายอื่น ให้ใส่ค่า ETag ของรายการเดิม ซึ่งทําได้โดยระบุค่า ETag ในส่วนหัว HTTP If-Match
หรือระบุแอตทริบิวต์ gd:etag
ของรายการเดิมในรายการที่อัปเดต หากต้องการระบุค่า ETag ของรายการเดิม ให้ตรวจสอบแอตทริบิวต์ gd:etag
ขององค์ประกอบ <entry>
สำหรับรายการสื่อ ETag ของสื่ออาจอยู่ในแอตทริบิวต์ gd:etag
ของลิงก์ edit-media
หากต้องการอัปเดตรายการโดยไม่คำนึงว่ามีคนอัปเดตรายการนั้นตั้งแต่ที่คุณดึงข้อมูลหรือไม่ ให้ใช้ If-Match: *
และไม่ใส่ ETag ดูข้อมูลเพิ่มเติมเกี่ยวกับ ETag ได้จากคู่มืออ้างอิงสำหรับ Google Data API
การอัปเดตข้อมูลเมตาหรือเนื้อหา HTML ของรายการ
หากต้องการอัปเดตข้อมูลเมตาหรือเนื้อหา HTML ของรายการ ให้ส่ง HTTP PUT
ไปยังลิงก์ edit
ของรายการ
ต่อไปนี้เป็นตัวอย่างของการอัปเดตรายการ listpage
(แสดงด้วยรหัส ENTRY_ID
) ด้วยการเปลี่ยนแปลงต่อไปนี้
- ระบบจะแก้ไขชื่อเป็น "เนื้อหาที่อัปเดตแล้ว"
- เนื้อหา HTML ที่อัปเดตแล้ว
- หัวคอลัมน์แรกของรายการจะอัปเดตเป็น "เจ้าของ"
- องค์ประกอบ
<sites:pageName>
จะแก้ไขเส้นทาง URL ของหน้าเว็บ
PUT /feeds/content/domainName/siteName/ENTRY_ID Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 816 Content-Type: application/atom+xml <entry xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:gd="http://schemas.google.com/g/2005" gd:etag="W/"CEEBRn0ymA9WxJWEUw.""> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#listpage" label="listpage"/> <title>Updated Title</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">Updated Content</div> </content> <gs:worksheet name="listpage"/> <gs:header row="1"/> <gs:data startRow="2"> <gs:column index="A" name="Owner"/> <gs:column index="B" name="Decription"/> <gs:column index="C" name="Completed"/> </gs:data> <sites:pageName>newPagePath</sites:pageName> </entry>
หมายเหตุ: รายการ (ตามที่เซิร์ฟเวอร์แสดงผล) จะมีองค์ประกอบมากกว่าตัวอย่างด้านบน
การแทนที่เนื้อหาของไฟล์แนบ
ด้านล่างนี้คือตัวอย่างการแทนที่เนื้อหาของไฟล์แนบ แต่จะไม่เปลี่ยนแปลงข้อมูลเมตา เนื่องจากคำขอมีเนื้อหาใหม่
ระบบจะใช้ลิงก์ edit-media
ของรายการไฟล์แนบ
PUT /feeds/media/content/domainName/siteName/ATTACHMENT_ENTRY_ID Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Length: 70581 Content-Type: application/msword ... doc contents here ...
การอัปเดตข้อมูลเมตาและเนื้อหาของไฟล์แนบ
ด้านล่างนี้คือตัวอย่างการอัปเดตทั้งข้อมูลเมตาและเนื้อหาของไฟล์แนบพร้อมกัน ชื่อไฟล์แนบจะได้รับการอัปเดตเป็น
"ชื่อใหม่" และเนื้อหาจะถูกแทนที่ด้วยเนื้อหาของไฟล์ .zip เนื่องจากคำขอมีเนื้อหาไฟล์ใหม่ ระบบจะใช้ลิงก์ edit-media
ของรายการไฟล์แนบ
โปรดทราบว่าการรวม ETag สำหรับข้อมูลเมตาจะมี If-Match
โดยนัยสำหรับเนื้อหาสื่อด้วย เนื่องจากการอัปเดตเนื้อหาสื่อจะทำให้ ETag ของข้อมูลเมตามีการเปลี่ยนแปลง
PUT /feeds/media/content/domainName/siteName/ATTACHMENT_ENTRY_ID Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> Content-Type: multipart/related; boundary="END_OF_PART" --END_OF_PART Content-Type: application/atom+xml <?xml version='1.0' encoding='UTF-8'?> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gd="http://schemas.google.com/g/2005" gd:etag="BxAaTxRZAyp7ImBq"> <link rel="http://schemas.google.com/sites/2008#parent" type="application/atom+xml" href="https://sites.google.com/feeds/content/domainName/siteName/ATTACHMENT_ENTRY_ID"/> <title>New Title</title> </entry> --END_OF_PART Content-Type: application/zip ... zip contents here ... --END_OF_PART
การลบเนื้อหา
หากต้องการนำรายการออกจาก Google Site ก่อนอื่นให้เรียกข้อมูลรายการนั้น จากนั้นส่งDELETE
คำขอไปยัง URL edit
ของรายการ URL นี้เหมือนกับที่ใช้เมื่ออัปเดตข้อมูลเมตาหรือเนื้อหา HTML ของรายการ
DELETE /feeds/content/domainName/siteName/ENTRY_ID Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> If-Match: <ETag or * here>
หากลบรายการเรียบร้อยแล้ว เซิร์ฟเวอร์จะตอบกลับด้วย HTTP 200 OK
หากคุณต้องการตรวจสอบให้แน่ใจว่าคุณไม่ได้ลบรายการที่เปลี่ยนแปลงโดยไคลเอ็นต์อื่นหลังจากที่คุณดึงข้อมูลนั้น ให้ใส่ส่วนหัว HTTP If-Match
ที่มีค่า ETag ของรายการเดิม คุณระบุค่า ETag ของรายการเดิมได้โดยตรวจสอบแอตทริบิวต์ gd:etag
ขององค์ประกอบ <entry>
หากต้องการลบรายการ ไม่ว่าคนอื่นจะอัปเดตรายการนั้นนับตั้งแต่ที่คุณดึงข้อมูลหรือไม่ก็ตาม ให้ใช้ If-Match: *
และไม่ใส่ ETag (ในกรณีนี้ คุณไม่จำเป็นต้องเรียกข้อมูลรายการก่อนที่จะลบ)
ดูข้อมูลเพิ่มเติมเกี่ยวกับ ETag ได้ที่คู่มืออ้างอิง Google Data API
การดาวน์โหลดไฟล์แนบ
เมื่อคุณมีรายการไฟล์แนบแล้ว คุณจะดาวน์โหลดไฟล์ได้โดยส่ง HTTP GET
ที่ตรวจสอบสิทธิ์แล้วไปยังลิงก์ <content>
src ของรายการ ตัวอย่างลิงก์เนื้อหาของ PDF
<content type="application/pdf" src="http://502377765-a-google-com-s-sites.googlegroups.com/feeds/media/content/domainName/siteName/678942036"/>
ฟีด ACL
ภาพรวมของสิทธิ์การแชร์ (ACL)
รายการ ACL แต่ละรายการในฟีด ACL แสดงบทบาทการเข้าถึงของเอนทิตีหนึ่งๆ ไม่ว่าจะเป็นผู้ใช้ กลุ่มผู้ใช้ โดเมน หรือสิทธิ์เข้าถึงเริ่มต้น (ซึ่งเป็นเว็บไซต์สาธารณะ) ระบบจะแสดงเฉพาะรายการสำหรับเอนทิตีที่มีสิทธิ์เข้าถึงอย่างชัดเจน โดยระบบจะแสดงรายการละ 1 รายการสำหรับอีเมลแต่ละรายการในแผง "ผู้ใช้ที่มีสิทธิ์เข้าถึง" ในหน้าจอการแชร์ของ UI ของ Google Sites ดังนั้น ผู้ดูแลระบบโดเมนจะไม่แสดง แม้ว่าจะมีสิทธิ์เข้าถึงเว็บไซต์โดยนัยก็ตาม
บทบาท
องค์ประกอบบทบาทแสดงถึงระดับการเข้าถึงที่เอนทิตีโตนมีได้ ค่าที่เป็นไปได้ของเอลิเมนต์ gAcl:role
มี 4 ค่า ดังนี้
- reader — ผู้มีสิทธิ์อ่าน (เทียบเท่ากับสิทธิ์การเข้าถึงระดับอ่านอย่างเดียว)
- ผู้เขียน — ผู้ทำงานร่วมกัน (เทียบเท่ากับสิทธิ์อ่าน/เขียน)
- owner — โดยทั่วไปคือผู้ดูแลระบบเว็บไซต์ (เทียบเท่ากับสิทธิ์อ่าน/เขียน)
ขอบเขต
องค์ประกอบขอบเขตแสดงถึงเอนทิตีที่มีระดับการเข้าถึงนี้ องค์ประกอบ gAcl:scope
ที่เป็นไปได้มี 5 ประเภทดังนี้
- user — ค่าอีเมล เช่น "user@gmail.com"
- group — อีเมล Google Group เช่น "group@domain.com"
- domain — ชื่อโดเมน G Suite เช่น "domain.com"
- invite — ผู้ใช้ที่ได้รับเชิญให้เข้าร่วมเว็บไซต์ แต่ยังไม่ได้เพิ่มลงใน ACL ของเว็บไซต์ (ใช้ไม่ได้หากระบุ gdata 1.3 หรือต่ำกว่า)
- default — ขอบเขตประเภท "default" เป็นไปได้เพียง 1 รายการเท่านั้น ซึ่งไม่มีค่า (เช่น
<gAcl:scope type="default">
) ขอบเขตนี้ควบคุมการเข้าถึงที่ผู้ใช้ทุกคนมีโดยค่าเริ่มต้นในเว็บไซต์สาธารณะ
หมายเหตุ: โดเมนต้องไม่มีค่า gAcl:role
ที่กําหนดไว้เป็นสิทธิ์เข้าถึงระดับ "เจ้าของ" แต่ต้องเป็นสิทธิ์เข้าถึงระดับผู้อ่านหรือผู้เขียนเท่านั้น
เกี่ยวกับขอบเขต "invite"
API จะแสดงขอบเขตคำเชิญเมื่อคุณเพิ่มผู้ใช้อย่างน้อย 1 รายลงใน ACL ซึ่งยังไม่มีบัญชี Google API จะส่งกลับ URL ที่มีโทเค็นแบบฝัง ซึ่งคุณต้องแจ้งให้ผู้ใช้ที่ได้รับเชิญเพื่ออนุญาตให้ผู้ใช้ดังกล่าวยอมรับคำเชิญ
วิธีการเชิญนี้ช่วยให้คุณเชิญผู้ใช้ที่ไม่ใช่ของ Google ได้โดยไม่ต้องทราบอีเมลที่ต้องการใช้ล่วงหน้า ตราบใดที่ผู้ใช้คลิก URL คำเชิญที่มีโทเค็นที่ฝังอยู่ ผู้ใช้จะลงชื่อสมัครใช้เพื่อเข้าถึงได้โดยใช้อีเมลใดก็ได้ที่ต้องการ นอกจากนี้ ผู้ใช้หลายคนอาจใช้ URL นี้เพื่อยอมรับคําเชิญได้ ดังนั้น URL นี้จึงมีประโยชน์หากต้องการเชิญผู้ใช้คนเดียวหรือกลุ่มผู้ใช้
หมายเหตุ: ขอบเขต "invite" ใช้ได้ใน gdata เวอร์ชัน 1.4 ขึ้นไปเท่านั้น การดำเนินการนี้จะใช้งานไม่ได้หากคุณระบุ 1.3 หรือต่ำกว่าอย่างชัดเจน
กำลังเรียกดูฟีด ACL
ฟีด ACL สามารถใช้เพื่อควบคุมสิทธิ์การแชร์ของเว็บไซต์ และเข้าถึงได้ผ่าน URI ต่อไปนี้
https://sites.google.com/feeds/acl/site/domainName/siteName
พารามิเตอร์ฟีด | คำอธิบาย |
---|---|
domainName | "site " หรือโดเมนของโดเมนที่โฮสต์ G Suite (เช่น example.com ) |
siteName | ชื่อพื้นที่เว็บของเว็บไซต์ ซึ่งดูได้ใน URL ของเว็บไซต์ (เช่น myCoolSite ) |
โปรดทราบว่าแต่ละรายการในฟีดเว็บไซต์จะมีลิงก์ไปยังฟีดนี้
<link rel="http://schemas.google.com/acl/2007#accessControlList" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName"/>
หากต้องการดึงสิทธิ์การแชร์ของเว็บไซต์ ให้ส่งและ HTTP GET
ไปยัง URI ของฟีด ACL:
GET /feeds/acl/site/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here>
เซิร์ฟเวอร์จะตอบกลับด้วย 200 OK
และฟีดของรายการ ACL ดังนี้
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns:gAcl="http://schemas.google.com/acl/2007" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006" xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch" xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0"> <id>https://sites.google.com/feeds/acl/site/domainName/siteName</id> <updated>2009-12-03T22:01:05.963Z</updated> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <title>Acl</title> <link rel="http://schemas.google.com/g/2005#feed" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName"/> <link rel="http://schemas.google.com/g/2005#post" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName"/> <generator version="1" uri="http://sites.google.com">Google Sites</generator> <openSearch:startIndex>1</openSearch:startIndex> <entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserA%40gmail.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserA%40google.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserA%40google.com"/> <gAcl:scope type="user" value="userA@google.com"/> <gAcl:role value="owner"/> </entry> <entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserB%40gmail.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserB%40gmail.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserB%40gmail.com"/> <gAcl:scope type="user" value="userB@gmail.com"/> <gAcl:role value="writer"/> </entry> <entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserC%40gmail.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserC%40gmail.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3AuserC%40gmail.com"/> <gAcl:scope type="user" value="userC@gmail.com"/> <gAcl:role value="reader"/> </entry> ... </feed>
การแชร์เว็บไซต์
ฟีด ACL ยอมรับคำขอ GET
, POST
และ PUT
หากต้องการแทรกบทบาทใหม่ลงในฟีด ACL ให้ส่งคําขอ POST
ไปยังฟีด ACL ของเว็บไซต์
หมายเหตุ: ACL การแชร์บางรายการอาจเป็นไปได้เฉพาะเมื่อมีการกำหนดค่าโดเมนให้อนุญาตสิทธิ์ดังกล่าว (เช่น หากเปิดใช้การแชร์ภายนอกโดเมนสำหรับโดเมน G Suite เป็นต้น)
ตัวอย่างนี้เพิ่มผู้ทำงานร่วมกัน (ผู้เขียน) รายใหม่ลงในเว็บไซต์
POST /feeds/acl/site/domainName/siteName HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl='http://schemas.google.com/acl/2007'> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/acl/2007#accessRule'/> <gAcl:role value='writer'/> <gAcl:scope type='user' value='new_writer@example.com'/> </entry>
ระบบจะแสดง 201 Created
และรายการใหม่เมื่อแทรกข้อมูลสําเร็จ
<entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com"/> <gAcl:role value='writer'/> <gAcl:scope type='user' value='new_writer@example.com'/> </entry>
การเชิญผู้ใช้ผ่านขอบเขต "คำเชิญ"
หากคุณเพิ่มผู้ใช้ที่ไม่มีบัญชี Google ทาง API จะแสดงผล URL ที่คุณจะต้องส่งให้ผู้ใช้ที่ต้องการเชิญ หลังจากคลิก URL ดังกล่าว ผู้ใช้จะเข้าถึงเว็บไซต์ได้โดยลงชื่อเข้าใช้ด้วยบัญชีที่มีอยู่หรือสร้างบัญชีใหม่
การเชิญที่สำเร็จจะแสดงผลเป็น 201 Created
และรายการใหม่ที่มี URL ที่คุณจะต้องส่งให้ผู้ใช้
<entry> <id>https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_invite%40example.com</id> <updated>2009-12-03T22:01:05.963Z</updated> <app:edited xmlns:app="http://www.w3.org/2007/app">2009-12-03T22:01:05.963Z</app:edited> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/acl/2007#accessRule"/> <link rel="http://schemas.google.com/sites/2008#invite" type="text/html"href="domainName/siteName?invite=inviteToken"/> <link rel="self" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_invite%40example.com"/> <link rel="edit" type="application/atom+xml" href="https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_invite%40example.com"/> <gAcl:role value='writer'/> <gAcl:scope type='invite' value='new_invite%40example.com'/> </entry>
การแชร์ระดับกลุ่มและโดเมน
คุณจะแชร์เว็บไซต์ทั่วทั้งกลุ่ม Google หรือโดเมน G Suite ได้เช่นเดียวกับการแชร์เว็บไซต์กับผู้ใช้รายเดียว ค่า scope
ที่จําเป็นแสดงอยู่ด้านล่าง
การแชร์ไปยังอีเมลกลุ่ม
<gAcl:scope type="group" value="group@example.com"/>
แชร์กับทั้งโดเมน:
<gAcl:scope type="domain" value="example.com"/>
การแชร์ในระดับโดเมนใช้ได้กับโดเมน G Suite เท่านั้น และใช้ได้กับโดเมนที่โฮสต์เว็บไซต์เท่านั้น เช่น http://sites.google.com/a/domain1.com/siteA จะแชร์ทั้งเว็บไซต์กับ domain1.com ได้เท่านั้น แต่จะแชร์กับ domain2.com ไม่ได้ เว็บไซต์ที่ไม่ได้โฮสต์ในโดเมน G Suite (เช่น http://sites.google.com/site/siteB) จะเชิญโดเมนไม่ได้
การแก้ไขสิทธิ์การแชร์
หากต้องการอัปเดตรายการ ACL ให้แก้ไขรายการตามที่จำเป็น แล้วส่งคำขอ HTTP PUT
ไปยังลิงก์ edit
ของรายการ ซึ่งก็คือองค์ประกอบ <link>
ที่แอตทริบิวต์ "rel" ตั้งค่าเป็น "edit" สำหรับตัวอย่างก่อนหน้านี้ ลิงก์ดังกล่าวคือ
<link rel='edit' type='application/atom+xml' href='https://sites.google.com/feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com'/>
ข้อมูลโค้ดด้านล่างจะเปลี่ยนบทบาทของ new_writer@gmail.com
เป็น "ผู้อ่าน"
PUT /feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here> <entry xmlns="http://www.w3.org/2005/Atom" xmlns:gAcl='http://schemas.google.com/acl/2007'> <category scheme='http://schemas.google.com/g/2005#kind' term='http://schemas.google.com/acl/2007#accessRule'/> <gAcl:role value='reader'/> <gAcl:scope type='user' value='new_writer@gmail.com'/> </entry>
กำลังลบสิทธิ์การแชร์
หากต้องการนำสิทธิ์ของผู้ใช้รายนี้ออก ให้ส่งคำขอ DELETE
ไปยังลิงก์ edit
เดียวกันกับที่ใช้สำหรับคำขอ PUT
โดยทำดังนี้
DELETE /feeds/acl/site/domainName/siteName/user%3Anew_writer%40example.com HTTP/1.1 Host: sites.google.com GData-Version: 1.4 Authorization: <your authorization header here>
เซิร์ฟเวอร์จะตอบกลับด้วย 200 OK
หัวข้อพิเศษ
การดึงข้อมูลฟีดหรือรายการอีกครั้ง
หากต้องการดึงข้อมูลฟีดหรือรายการที่เคยดึงข้อมูลไว้ก่อนหน้านี้ คุณสามารถเพิ่มประสิทธิภาพได้โดยบอกให้เซิร์ฟเวอร์ส่งรายการหรือรายการเฉพาะในกรณีที่มีการเปลี่ยนแปลงตั้งแต่ครั้งล่าสุดที่คุณดึงข้อมูล
หากต้องการดึงข้อมูลแบบมีเงื่อนไขเช่นนี้ ให้ส่งคำขอ HTTP GET
ที่มีส่วนหัว HTTP If-None-Match
ในส่วนหัว ให้ระบุ ETag ของรายการหรือรายการ ซึ่งดูได้ในแอตทริบิวต์ gd:etag
ขององค์ประกอบ <feed>
หรือองค์ประกอบ <entry>
ตัวอย่างการใช้ฟีดเว็บไซต์
GET /feeds/site/domainName/myOtherTestSite/ GData-Version: 1.4 If-None-Match: W/"Ck8GQXk7fil7ImA9WxNSFk0."
เมื่อเซิร์ฟเวอร์ได้รับคำขอนี้ ก็จะตรวจสอบว่ารายการที่คุณขอมี ETag เดียวกับ ETag ที่คุณระบุหรือไม่ หาก ETag ตรงกัน แสดงว่าไม่มีการเปลี่ยนแปลงรายการนั้น และเซิร์ฟเวอร์จะแสดงรหัสสถานะ HTTP 304 Not Modified
หรือรหัสสถานะ HTTP 412 Precodition Failed
รหัสสถานะทั้ง 2 รหัสนี้บ่งบอกว่ารายการที่คุณดึงข้อมูลไว้แล้วเป็นข้อมูลล่าสุด
หาก ETag ไม่ตรงกัน แสดงว่ามีการแก้ไขรายการตั้งแต่ที่คุณขอครั้งล่าสุด และเซิร์ฟเวอร์จะแสดงรายการนั้น
ดูข้อมูลเพิ่มเติมเกี่ยวกับ ETag ได้ที่คู่มืออ้างอิง Google Data API
การประมวลผลเป็นกลุ่ม
คำขอแบบเป็นกลุ่มช่วยให้ไคลเอ็นต์สามารถดําเนินการหลายรายการในคําขอเดียวแทนที่จะส่งแต่ละรายการแยกกัน
เซิร์ฟเวอร์จะดำเนินการเปลี่ยนแปลงตามที่ขอให้ได้มากที่สุด และแสดงผลข้อมูลสถานะที่คุณจะใช้ประเมินความสำเร็จหรือความล้มเหลวของแต่ละการดำเนินการได้ ดูรายละเอียดเพิ่มเติมเกี่ยวกับการประมวลผลแบบกลุ่มใน Google Data API ได้ที่การประมวลผลแบบกลุ่มด้วย Google Data API
การดำเนินการทั้งหมดในฟีดกลุ่มมีองค์ประกอบ <id> ยกเว้นการดำเนินการแทรก
องค์ประกอบนี้เหมือนกับ URL คำขอที่โดยปกติแล้วคุณจะใช้เมื่ออัปเดต ลบ หรือค้นหาฟีดเนื้อหา
ตัวอย่างเช่น หากคุณกำลังอัปเดตการแก้ไข ให้ตั้งค่า <id> เป็นลิงก์ edit
สำหรับรายการที่เป็นปัญหา
ซึ่งใช้เพื่อระบุรายการเป้าหมาย รายการใหม่ยังไม่มีองค์ประกอบ <id> เนื่องจากยังไม่ได้สร้าง คุณกําหนดค่าสตริงใน <batch:id> แทนได้ ซึ่งระบบจะแสดงผลในการตอบกลับของเซิร์ฟเวอร์และใช้ค้นหารายการที่เกี่ยวข้อง
หากต้องการส่งคําขอแบบเป็นกลุ่ม ให้สร้างฟีดกลุ่มและส่ง HTTP POST
ไปยังลิงก์กลุ่มของฟีด ดังนี้
<link rel="http://schemas.google.com/g/2005#batch" type="application/atom+xml" href="https://sites.google.com/feeds/content/site/siteName/batch"/>
ตัวอย่างด้านล่างแสดงวิธีการค้นหา แทรก อัปเดต และลบรายการหน้าเว็บ
POST /feeds/content/site/siteName/batch HTTP/1.1 Host: sites.google.com Accept: */* If-Match: * GData-Version: 1.4 Authorization: <your authorization header here> <feed xmlns="http://www.w3.org/2005/Atom" xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gd="http://schemas.google.com/g/2005" xmlns:batch='http://schemas.google.com/gdata/batch'> <entry> <id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID1</id> <batch:operation type="query"/> </entry> <entry> <batch:id>1</batch:id> <batch:operation type='insert'/> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>New Webpage1</title> <content type="xhtml"> <div xmlns="http://www.w3.org/1999/xhtml">HTML body goes here</div> </content> </entry> <entry gd:etag=""YDgpeyI.""> <id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID2</id> <batch:operation type='update'/> <category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/> <title>Updated Title for Webpage2</title> ... <batch:operaation type="update"/> </entry> <entry gd:etag=""YassseyI.""> <id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID3</id> <batch:operation type='delete'/> </entry> </feed>
ฟีดที่แสดงผลจะมีรายการผลลัพธ์ 1 รายการสําหรับการดำเนินการแต่ละรายการ ดังนี้
<feed xmlns="http://www.w3.org/2005/Atom" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/"
xmlns:sites="http://schemas.google.com/sites/2008" xmlns:gs="http://schemas.google.com/spreadsheets/2006"
xmlns:dc="http://purl.org/dc/terms" xmlns:batch="http://schemas.google.com/gdata/batch"
xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr="http://purl.org/syndication/thread/1.0">
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID1</id>
<updated>2009-11-10T22:44:08.369Z</updated>
<title>Batch Feed</title>
<entry gd:etag=""YDgpsdfeyI."">
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID1</id>
<published>2009-08-31T04:42:45.251Z</published>
<updated>2009-10-25T22:46:13.729Z</updated>
<app:edited xmlns:app="http://www.w3.org/2007/app">2009-10-25T22:46:13.671Z</app:edited>
<category scheme="http://schemas.google.com/g/2005#kind"
term="http://schemas.google.com/sites/2008#webpage" label="webpage"/>
<title>Page Title</title>
...
<batch:status code="200" reason="Success"/>
<batch:operation type="query"/>
</entry>
<entry gd:etag=""YDsseyI."">
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID4</id>
<published>2009-11-10T22:44:08.531Z</published>
<updated>2009-11-10T22:44:08.560Z</updated>
<app:edited xmlns:app="http://www.w3.org/2007/app">2009-11-10T22:44:08.531Z</app:edited>
<category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/sites/2008#webpage" label="webpage"/>
<title>New Webpage1</title>
<content type="xhtml">
<div xmlns="http://www.w3.org/1999/xhtml">
<table cellspacing="0" class="sites-layout-name-one-column sites-layout-hbox">
<tbody>
<tr>
<td class="sites-layout-tile sites-tile-name-content-1">
<div>HTML body goes here</div>
</td>
</tr>
</tbody>
</table>
</div>
</content>
...
<batch:id>1</batch:id>
<batch:status code="201" reason="Created"/>
<batch:operation type="insert"/>
</entry>
<entry gd:etag=""YDkpeyI."">
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID2</id>
<updated>2009-11-10T22:44:09.296Z</updated>
<title>Updated Title for Webpage2</title>
...
<sites:pageName>updated-title-for-webpage2</sites:pageName>
<sites:revision>5</sites:revision>
<batch:status code="200" reason="Success"/>
<batch:operation type="update"/>
</entry>
<entry>
<id>https://sites.google.com/feeds/content/site/siteName/ENTRY_ID3</id>
<title>Deleted</title>
<content>Deleted</content>
<batch:status code="200" reason="Success"/>
<batch:operation type="delete"/>
</entry>
</feed>