แสดงรายการคอลัมน์ทั้งหมดของประเภทรายงาน ลองใช้เลยหรือดูตัวอย่าง
ส่งคำขอ
คำขอ HTTP
GET https://www.googleapis.com/analytics/v3/metadata/reportType/columns
พารามิเตอร์
ชื่อพารามิเตอร์ | ค่า | คำอธิบาย |
---|---|---|
พารามิเตอร์ที่จําเป็น | ||
reportType |
string |
ประเภทรายงาน ค่าที่อนุญาต: ga โดยที่ ga สอดคล้องกับ Core Reporting API
|
เนื้อหาของคำขอ
อย่าระบุเนื้อหาคําขอด้วยวิธีนี้
คำตอบ
หากสําเร็จ เมธอดนี้จะแสดงเนื้อหาการตอบกลับโดยมีโครงสร้างดังนี้
{ "kind": "analytics#columns", "etag": etag, "totalResults": integer, "attributeNames": [ string ], "items": [ metadata.columns Resource ] }
ชื่อพร็อพเพอร์ตี้ | ค่า | คำอธิบาย | หมายเหตุ |
---|---|---|---|
kind |
string |
ประเภทคอลเล็กชัน | |
etag |
etag |
แท็กคอลเล็กชัน คุณสามารถเปรียบเทียบ etag นี้กับ etag ของคําตอบล่าสุดเพื่อตรวจสอบว่าคําตอบมีการเปลี่ยนแปลงหรือไม่ | |
totalResults |
integer |
จํานวนคอลัมน์ทั้งหมดที่แสดงในการตอบกลับ | |
attributeNames[] |
list |
รายการชื่อแอตทริบิวต์ที่แสดงตามคอลัมน์ | |
items[] |
list |
รายการคอลัมน์ของประเภทรายงาน |
ตัวอย่าง
หมายเหตุ: ตัวอย่างโค้ดที่มีสำหรับวิธีการนี้ไม่ได้แสดงถึงภาษาโปรแกรมที่รองรับทั้งหมด (ดูรายการภาษาที่รองรับได้ในหน้าไลบรารีของไคลเอ็นต์)
Java
/** * 1. Execute a Metadata Request * An application can request columns data by calling the list method on the Analytics service object. * The method requires an reportType parameter that specifies the column data to retrieve. * For example, the following code requests columns for the ga report type. */ try { Columns results = getMetadata(analytics); // Success } catch (GoogleJsonResponseException e) { // Catch API specific errors. handleApiError(e); } catch (IOException e) { // Catch general parsing network errors.
e.printStackTrace(); } /** * 2. Print out the Columns data * The components of the result can be printed out as follows: */ private static Columns getMetadata(Analytics analytics) throws IOException { String reportType = "ga"; return analytics.metadata() .columns() .list(reportType) .execute(); } private static void printMetadataReport(Columns results) { System.out.println("Metadata Response Report"); printReportInfo(results); printAttributes(results.getAttributeNames()); printColumns(results.getItems()); } private static void printReportInfo(Columns results) { System.out.println("## Metadata Report Info ##"); System.out.println("Kind: " + results.getKind()); System.out.println("Etag: " + results.getEtag()); System.out.println("Total Results: " + results.getTotalResults()); System.out.println(); } private static void printAttributes(List<String> attributeNames) { System.out.println("## Attribute Names ##"); for (String attribute : attributeNames) { System.out.println(attribute); } } private static void printColumns(List<Column> columns) { System.out.println("## Columns ##"); for (Column column : columns) { System.out.println(); System.out.println("Column ID: " + column.getId()); System.out.println("Kind: " + column.getKind()); Map<String, String> columnAttributes = column.getAttributes(); for (Map.Entry<String, String> attribute: columnAttributes.entrySet()) { System.out.println(attribute.getKey() + ": " + attribute.getValue()); } } }
PHP
/**
* 1. Execute a Metadata Request
* An application can request columns data by calling the list method on the Analytics service object.
* The method requires an reportType parameter that specifies the column data to retrieve.
* For example, the following code requests columns for the ga report type.
*/
try {
$results = $analytics->metadata_columns->listMetadataColumns('ga');
// Success
} catch (apiServiceException $e) {
// Handle API service exceptions.
$error = $e->getMessage();
}
/**
* 2. Print out the Columns data
* The components of the result can be printed out as follows:
*/
function printMetadataReport($results) {
print '<h1>Metadata Report</h1>';
printReportInfo($results);
printAttributes($results);
printColumns($results);
}
function printReportInfo(&$results) {
$html = '<h2>Report Info</h2>';
$html .= <<<HTML
<pre>
Kind = {$results->getKind()}
Etag = {$results->getEtag()}
Total Results = {$results->getTotalResults()}
</pre>
HTML;
print $html;
}
function printAttributes(&$results) {
$html = '<h2>Attribute Names</h2><ul>';
$attributes = $results->getAttributeNames();
foreach ($attributes as $attribute) {
$html .= '<li>'. $attribute . '</li>';
}
$html .= '</ul>';
print $html;
}
function printColumns(&$results) {
$columns = $results->getItems();
if (count($columns) > 0) {
$html = '<h2>Columns</h2>';
foreach ($columns as $column) {
$html .= '<h3>' . $column->getId() . '</h3>';
$column_attributes = $column->getAttributes();
foreach ($column_attributes as $name=>$value) {
$html .= <<<HTML
<pre>
{$name}: {$value}
</pre>
HTML;
}
}
} else {
$html = '<p>No Results Found.</p>';
}
print $html;
}
Python
# 1. Execute a Metadata Request # An application can request columns data by calling the list method on the Analytics service object. # The method requires an reportType parameter that specifies the column data to retrieve. # For example, the following code requests columns for the ga report type. try: results = service.metadata().columns().list(reportType='ga').execute() except TypeError, error: # Handle errors in constructing a query. print ('There was an error in constructing your query : %s' % error) except HttpError, error: # Handle API errors. print ('Arg, there was an API error : %s : %s' % (error.resp.status, error._get_reason())) # 2. Print out the Columns data # The components of the result can be printed out as follows: def print_metadata_report(results): print 'Metadata Response Report' print_report_info(results) print_attributes(results.get('attributeNames')) print_columns(results) def print_report_info(columns): print "Metadata Report Info" if columns: print 'Kind = %s' % columns.get('kind') print 'Etag = %s' % columns.get('etag') print 'Total Results = %s' % columns.get('totalResults') def print_attributes(attributes): if attributes: print 'Attribute Names:' for attribute in attributes: print attribute def print_columns(columns_data): if columns_data: print 'Columns:' columns = columns_data.get('items', []) for column in columns: print print '%15s = %35s' % ('Column ID', column.get('id')) print '%15s = %35s' % ('Kind', column.get('kind')) column_attributes = column.get('attributes', []) for name, value in column_attributes.iteritems(): print '%15s = %35s' % (name, value)
JavaScript
ใช้ไลบรารีของไคลเอ็นต์ JavaScript
/** * 1. Execute a Metadata Request * An application can request columns data by calling the list method on the Analytics service object. * The method requires an reportType parameter that specifies the column data to retrieve. * For example, the following code requests columns for the ga report type. */ function makeMetadataRequest() { var request = gapi.client.analytics.metadata.columns.list({ 'reportType': 'ga' }); request.execute(renderMetadataReport); } /** * 2. Print out the Columns data * The components of the result can be printed out as follows: */ function renderMetadataReport(results) { var reportHtml = []; reportHtml.push( getReportInfo(results), getAttributes(results), getColumns(results)); // Renders the results to a DIV element document.getElementById('DIV_ID').innerHTML = reportHtml.join(''); } function getReportInfo(results) { var html = []; if (results) { html.push('<h2>Report Info</h2>'); html.push('<pre>Kind: ', results.kind, '</pre>'); html.push('<pre>Etag: ', results.etag, '</pre>'); html.push('<pre>Total Results: ', results.totalResults, '</pre>'); } return html.join(''); } function getAttributes(results) { var html = []; if (results) { html.push('<h2>Attribute Names</h2><ul>'); var attributes = results.attributeNames; for (var i = 0, attribute; attribute = attributes[i]; i++) { html.push('<li>', attribute, '</li>'); } html.push('</ul>'); } return html.join(''); } function getColumns(results) { var html = []; if (results) { var columns = results.items; html.push('<h2>Columns</h2>'); for (var i = 0, column; column = columns[i]; i++) { html.push('<h3>', column.id, '</h3>'); var attributes = column.attributes; for (attribute in attributes) { html.push('<pre><strong>', attribute, '</strong> : ', attributes[attribute], '</pre>'); } } } return html.join(''); }
ลองใช้เลย
ใช้ API Explorer ด้านล่างเพื่อเรียกใช้เมธอดนี้กับข้อมูลสดและดูคําตอบ หรือลองใช้ Explorer แบบสแตนด์อโลนแทน