نمونه‌های پیوندهای دارایی دیجیتال Google

کدگذاری نمونه اغلب آسان‌ترین راه برای یادگیری نحوه استفاده از میانای برنامه‌سازی کاربردی است. برای پیوندهای نمونه‌های «پیوندهای دارایی دیجیتال Google»، زبان برنامه‌نویسی زیر را انتخاب کنید.

نمونه‌ها از کتابخانه‌های کارخواه Google API استفاده می‌کنند.

اگر صفحه نمونه‌های کتابخانه هنوز نمونه‌ای برای «پیوندهای دارایی دیجیتال Google» ندارد، همچنان می‌توانید از آن کتابخانه استفاده کنید و ممکن است بتوانید نمونه‌هایی را که برای «میانای برنامه‌سازی کاربردی» Google دیگری ارائه شده است اقتباس کنید.

Python

در اینجا نمونه ساده‌ای از Python آورده شده است که همه بیانیه‌های ایجادشده توسط وب‌سایت مشخصی را فهرست می‌کند، سپس بررسی می‌کند که آیا آن سایت بیانیه delegate_permission/common.handle_all_urls را درباره برنامه Android خاصی ایجاد می‌کند یا نه.

#!/usr/bin/python

import urllib

def ListWeb(source_web_site, relation):
  return urllib.urlopen(
      'https://digitalassetlinks.googleapis.com/v1/'
      'statements:list?source.web.site=%s&relation=%s'
      % (urllib.quote(source_web_site, ''),
         urllib.quote(relation, ''))).read()

def CheckWebToAndroid(source_web_site, relation,
                      target_package_name, target_sha256_fingerprint):
  return urllib.urlopen(
      'https://digitalassetlinks.googleapis.com/v1/'
      'assetlinks:check?source.web.site=%s&relation=%s'
      '&target.android_app.package_name=%s'
      '&target.android_app.certificate.sha256_fingerprint=%s'
      '&key=API_KEY'
      % (urllib.quote(source_web_site, ''),
         urllib.quote(relation, ''),
         urllib.quote(target_package_name, ''),
         urllib.quote(target_sha256_fingerprint, ''))).read()

def main():
  print '================================== List() Output ======='
  print ListWeb('http://example.digitalassetlinks.org',
                'delegate_permission/common.handle_all_urls')
  print '================================== Check() Output ======'
  print CheckWebToAndroid(
      'http://example.digitalassetlinks.org',
      'delegate_permission/common.handle_all_urls',
      'org.digitalassetlinks.sampleapp',
      '10:39:38:EE:45:37:E5:9E:8E:E7:92:F6:54:50:4F:B8:34:6F:C6:B3:46:D0:BB:C4:41:5F:C3:39:FC:FC:8E:C1')

if __name__ == '__main__':
  main()

JavaScript

در اینجا یک نمونه ساده جاوا اسکریپت آورده شده است که به شما امکان می‌دهد همه بیانیه‌های ایجادشده توسط یک وب‌سایت خاص را فهرست کنید و همچنین وجود یک بیانیه خاص را در آن وب‌سایت بررسی کنید.

<html>
  <head>
    <script type="text/javascript">
      function executeRequest(request, outElement) {
        var xmlhttp = new XMLHttpRequest();
        xmlhttp.onreadystatechange = function() {
          if (xmlhttp.readyState == 4) {
            if (xmlhttp.status == 200) {
              outElement.value = xmlhttp.responseText;
            } else {
              outElement.value = "Error running request. Response: "
                  + xmlhttp.responseText;
            }
          }
        };
        xmlhttp.open('GET', 'https://digitalassetlinks.googleapis.com/v1/' +
            request, true);
        xmlhttp.send();
      }

      function executeListRequest() {
        var sourceWebSite = encodeURIComponent(
            document.getElementById('list_source').value);
        var relation = encodeURIComponent(
            document.getElementById('list_relation').value);
        var outputTextArea = document.getElementById('list_response');
        executeRequest('statements:list?source.web.site=' + sourceWebSite
            + '&relation=' + relation, outputTextArea);
      }

      function executeCheckRequest() {
        var sourceWebSite = encodeURIComponent(
            document.getElementById('check_source').value);
        var relation = encodeURIComponent(
            document.getElementById('check_relation').value);
        var targetPackageName = encodeURIComponent(
            document.getElementById('check_target_package').value);
        var targetSha256Fingerprint = encodeURIComponent(
            document.getElementById('check_target_sha256_fingerprint').value);
        var outputTextArea = document.getElementById('check_response');
        executeRequest('assetlinks:check?source.web.site=' + sourceWebSite
            + '&relation=' + relation
            + '&target.android_app.package_name=' + targetPackageName
            + '&target.android_app.certificate.sha256_fingerprint='
            +     targetSha256Fingerprint
            + '&key=API_KEY',
            outputTextArea);
      }

    </script>
  </head>
  <body>
    <h2>List()</h2>
    <label>Source Web Asset:</label>
    <input type="text" id="list_source"
        value="http://example.digitalassetlinks.org">
     
    <label>Relation:</label>
    <input type="text" id="list_relation"
        value="delegate_permission/common.handle_all_urls">
     
    <button type="button" onclick="executeListRequest()">Run</button><br>
    <textarea rows="20" cols="80" id="list_response"></textarea>
    <hr>
    <h2>Check()</h2>
    <label>Source Web Asset:</label>
    <input type="text" id="check_source"
        value="http://example.digitalassetlinks.org">
     
    Relation:
    <input type="text" id="check_relation"
        value="delegate_permission/common.handle_all_urls"><br>
     
    <label>Target Android Package:</label>
    <input type="text" id="check_target_package"
        value="org.digitalassetlinks.sampleapp">
     
    <label>Target Android Certificate Fingerprint:</label>
    <input type="text" id="check_target_sha256_fingerprint"
        value="10:39:38:EE:45:37:E5:9E:8E:E7:92:F6:54:50:4F:B8:34:6F:C6:B3:46:D0:BB:C4:41:5F:C3:39:FC:FC:8E:C1">
     
    <button type="button" onclick="executeCheckRequest()">Run</button><br>
    <textarea rows="20" cols="80" id="check_response"></textarea>
  </body>
</html>

رفتن

هیچ نمونه Go به‌طور خاص برای این نسخه از Google Digital Asset Links وجود ندارد.

بااین‌حال، ممکن است بتوانید یکی از نمونه‌های Go دیگر را اقتباس کنید.

جاوا

هیچ نمونه Java به‌طور خاص برای این نسخه از Google Digital Asset Links وجود ندارد.

شاید بتوانید یکی از دیگر نمونه‌های Java را اقتباس کنید.

دات نت

هیچ نمونه .NET به‌طور خاص برای این نسخه از Google Digital Asset Links وجود ندارد.

بااین‌حال، ممکن است بتوانید یکی از نمونه‌های NET. دیگر را اقتباس کنید.

آبجکتیو-سی

هیچ نمونه Objective-C به‌طور خاص برای این نسخه از Google Digital Asset Links وجود ندارد.

بااین‌حال، ممکن است بتوانید یکی از نمونه‌های Objective-C دیگر را اقتباس کنید.

PHP

هیچ نمونه PHP به‌طور خاص برای این نسخه از Google Digital Asset Links وجود ندارد.

بااین‌حال، ممکن است بتوانید یکی از دیگر نمونه‌های PHP را اقتباس کنید.

Ruby

هیچ نمونه Ruby به‌طور خاص برای این نسخه از Google Digital Asset Links وجود ندارد.

بااین‌حال، ممکن است بتوانید یکی از نمونه‌های Ruby دیگر را اقتباس کنید.