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

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

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

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

پایتون

در اینجا یک مثال ساده پایتون است که تمام عبارات ارائه شده توسط یک وب سایت معین را فهرست می کند، سپس بررسی می کند که آیا آن سایت عبارت delegate_permission/common.handle_all_urls را در مورد یک برنامه اندروید خاص ارائه می کند یا خیر.

#!/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()

جاوا اسکریپت

در اینجا یک مثال ساده جاوا اسکریپت آمده است که به شما امکان می دهد تمام عبارات ارائه شده توسط یک وب سایت خاص را لیست کنید و همچنین وجود یک عبارت داده شده را در آن وب سایت بررسی کنید.

<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 وجود ندارد.

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

جاوا

هیچ نمونه جاوا به طور خاص برای این نسخه از پیوندهای دارایی دیجیتال Google وجود ندارد.

ممکن است بتوانید یکی از نمونه های جاوا دیگر را تطبیق دهید.

.خالص

هیچ نمونه دات نت به طور خاص برای این نسخه از پیوندهای دارایی دیجیتال Google وجود ندارد.

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

هدف-C

هیچ نمونه Objective-C به طور خاص برای این نسخه از پیوندهای دارایی دیجیتال Google وجود ندارد.

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

PHP

هیچ نمونه PHP به طور خاص برای این نسخه از پیوندهای دارایی دیجیتال Google وجود ندارد.

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

روبی

هیچ نمونه روبی به طور خاص برای این نسخه از پیوندهای دارایی دیجیتال Google وجود ندارد.

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