דוגמאות לקישורים לנכסים דיגיטליים של Google

לרוב, הקוד לדוגמה הוא הדרך הקלה ביותר ללמוד איך משתמשים ב-API. כדי לקבל קישורים לדוגמאות של Google Digital Asset Links, בוחרים שפת תכנות מהאפשרויות הבאות.

הדוגמאות מתבססות על ספריות הלקוח של Google API.

אם דף דוגמאות של ספרייה עדיין לא כולל דוגמה עבור ב-Google Digital Asset Links עדיין תוכלו להשתמש בספרייה הזו, ויכול להיות שתוכלו להתאים את הדוגמאות שסופקו ל-Google API אחר.

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

הנה דוגמה פשוטה של 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

אין דוגמאות ל-Go שספציפיות לגרסה הזו של Google Digital Asset Links.

עם זאת, ייתכן שתוכלו להתאים אחת מהדוגמאות האחרות של Go.

Java

אין דוגמאות Java ספציפיות לגרסה הזו של הקישורים לנכסים דיגיטליים של Google.

יכול להיות שתוכלו להתאים את אחת מדוגמאות הקוד ב-Java.

‎.NET

אין דוגמאות ל-‎.NET שספציפיות לגרסה הזו של קישורי הנכסים הדיגיטליים של Google.

עם זאת, ייתכן שתוכל לשנות אחד מהשניים דוגמאות.NET.

Objective-C

אין דוגמאות של Objective-C במיוחד לגרסה הזו של קישורים לנכסים דיגיטליים של Google.

עם זאת, יכול להיות שתוכלו להתאים את אחת מהדוגמאות האחרות ל-Objective-C.

PHP

אין דוגמאות ל-PHP שספציפיות לגרסה הזו של Google Digital Asset Links.

עם זאת, ייתכן שתוכל לשנות אחד מהשניים דגימות PHP.

Ruby

אין דוגמאות של Ruby באופן ספציפי לגרסה הזו של קישורים לנכסים דיגיטליים של Google.

עם זאת, ייתכן שתוכל לשנות אחד מהשניים דוגמאות של Ruby.