Uploads: uploadData

يجب تقديم تفويض.

يُرجى تحميل البيانات لمصدر بيانات مخصّص. اطّلِع على مثال.

تتوافق هذه الطريقة مع معرّف الموارد المنتظم (URI) /upload وتقبل الوسائط التي يتم تحميلها بالخصائص التالية:

  • الحد الأقصى لحجم الملف: 1 غيغابايت
  • أنواع MIME للوسائط المقبولة: application/octet-stream

وبالإضافة إلى المَعلمات العادية، تتيح هذه الطريقة استخدام المَعلمات المدرَجة في جدول المَعلمات.

الطلب

طلب HTTP

POST https://www.googleapis.com/upload/analytics/v3/management/accounts/accountId/webproperties/webPropertyId/customDataSources/customDataSourceId/uploads

المَعلمات

اسم المعلَمة القيمة الوصف
مَعلمات المسار
accountId string رقم تعريف الحساب المرتبط بعملية التحميل.
customDataSourceId string رقم تعريف مصدر البيانات المخصص الذي تنتمي إليه البيانات التي يجري تحميلها.
webPropertyId string سلسلة Universal Analytics للموقع الإلكتروني المرتبطة بعملية التحميل.
مَعلمات طلب البحث المطلوبة
uploadType string نوع طلب التحميل إلى معرّف الموارد المنتظم (URI) /upload. القيم المقبولة هي:
  • media - تحميل بسيط حمِّل بيانات الوسائط.
  • multipart - تحميل متعدد الأجزاء حمِّل الملف الذي يحتوي على بيانات وصفية (مثل اسم الملف). يجب أن يتكون نص الطلب من جزأين: الأول للبيانات الوصفية والثاني لبيانات الملف.
  • resumable - تحميل قابل للاستئناف قم بتحميل الملف بطريقة قابلة للاستئناف، باستخدام سلسلة من طلبين على الأقل.

التفويض

يتطلب هذا الطلب تفويضًا باستخدام نطاق واحد على الأقل من النطاقات التالية (مزيد من المعلومات عن المصادقة والترخيص).

النطاق
https://www.googleapis.com/auth/analytics
https://www.googleapis.com/auth/analytics.edit

نص الطلب

لا توفِّر نص طلب بهذه الطريقة.

الإجابة

في حال نجاحها، تعرض هذه الطريقة مورد عمليات التحميل في نص الاستجابة.

أمثلة

ملاحظة: إنّ الأمثلة المرتبطة بالرموز والمتوفرة لهذه الطريقة لا تمثّل كل لغات البرمجة المتوافقة (يُرجى مراجعة صفحة مكتبات البرامج للاطّلاع على قائمة باللغات المتوافقة).

Java

تستخدم مكتبة عملاء Java.

/*
 * Note: This code assumes you have an authorized Analytics service object.
 * See the Data Import Developer Guide for details.
 */


// This request uploads a file for the authorized user.
File file = new File("data.csv");
InputStreamContent mediaContent = new InputStreamContent("application/octet-stream",
    new FileInputStream(file));
mediaContent.setLength(file.length());
try {
  analytics.management().uploads().uploadData("123456",
      "UA-123456-1", "122333444455555", mediaContent).execute();
} catch (GoogleJsonResponseException e) {
  System.err.println("There was a service error: "
      + e.getDetails().getCode() + " : "
      + e.getDetails().getMessage());
}

PHP

تستخدم مكتبة برامج PHP.

/**
 * Note: This code assumes you have an authorized Analytics service object.
 * See the Data Import Developer Guide for details.
 */

/**
 * This request uploads a file to a custom data source.
 */
try {
  $analytics->management_uploads->uploadData(
      '123456',
      'UA-123456-1',
      '122333444455555',
      array('data' => file_get_contents('example.csv'),
            'mimeType' => 'application/octet-stream',
            'uploadType' => 'media'));

} catch (apiServiceException $e) {
  print 'There was an Analytics API service error '
      . $e->getCode() . ':' . $e->getMessage();

} catch (apiException $e) {
  print 'There was a general API error '
      . $e->getCode() . ':' . $e->getMessage();
}

Python

تستخدم مكتبة برامج Python.

# Note: This code assumes you have an authorized Analytics service object.
# See the Data Import Developer Guide for details.


# This request uploads a file custom_data.csv to a particular customDataSource.
# Note that this example makes use of the MediaFileUpload Object from the
# apiclient.http module.
from apiclient.http import MediaFileUpload
try:
  media = MediaFileUpload('custom_data.csv',
                          mimetype='application/octet-stream',
                          resumable=False)
  daily_upload = analytics.management().uploads().uploadData(
      accountId='123456',
      webPropertyId='UA-123456-1',
      customDataSourceId='9876654321',
      media_body=media).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 ('There was an API error : %s : %s' %
         (error.resp.status, error.resp.reason))

JavaScript

تستخدم مكتبة برامج JavaScript.

/*
 * Note: This code assumes you have an authorized Analytics client object.
 * See the Data Import Developer Guide for details.
 */

/*
 * This request uploads a file for the authorized user.
 */
function uploadData(fileData) {
  const boundary = '-------314159265358979323846';
  const delimiter = "\r\n--" + boundary + "\r\n";
  const close_delim = "\r\n--" + boundary + "--";

  var contentType = 'application/octet-stream'

  var reader = new FileReader();
  reader.readAsBinaryString(fileData);
  reader.onload = function(e) {
    var contentType = 'application/octet-stream';
    var metadata = {
      'title': fileData.name,
      'mimeType': contentType
    };

    var base64Data = btoa(reader.result);
    var multipartRequestBody =
        delimiter +
        'Content-Type: application/json\r\n\r\n' +
        JSON.stringify(metadata) +
        delimiter +
        'Content-Type: ' + contentType + '\r\n' +
        'Content-Transfer-Encoding: base64\r\n' +
        '\r\n' +
        base64Data +
        close_delim;

    var request = gapi.client.request({
      'path': 'upload/analytics/v3/management/accounts/123456/webproperties/UA-123456-1/customDataSources/ABCDEFG123abcDEF123/uploads',
      'method': 'POST',
      'params': {'uploadType': 'multipart'},
      'headers': {
        'Content-Type': 'multipart/mixed; boundary="' + boundary + '"'
      },
      'body': multipartRequestBody
    });
  request.execute(function (response) { // Handle the response. });
  }
}