Method assetlinks.check
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Określa, czy istnieje określona (kierunkowa) relacja między określonymi zasobami źródłowymi i docelowymi.
Relacja opisuje intencję połączenia między dwoma zasobami zgodnie z roszczeniem dotyczącym zasobu źródłowego. Przykładem takich relacji jest przekazywanie uprawnień lub uprawnień.
To polecenie jest najczęściej używane przez systemy infrastruktury do sprawdzania warunków wstępnych działania. Klient może na przykład chcieć się dowiedzieć, czy może wysłać adres URL do konkretnej aplikacji mobilnej. Klient może sprawdzić, czy na stronie internetowej znajduje się link do odpowiedniego komponentu, który prowadzi do aplikacji mobilnej, i ustalić, czy taka operacja jest dozwolona.
Uwaga dotycząca bezpieczeństwa: jeśli jako źródło podasz bezpieczny zasób, np. witrynę HTTPS lub aplikację na Androida, interfejs API zagwarantuje, że wszystkie instrukcje użyte do wygenerowania odpowiedzi zostały wykonane przez właściciela tego zasobu w bezpieczny sposób. Jeśli natomiast zasobem źródłowym jest niezabezpieczona witryna HTTP (tzn. adres URL zaczyna się od http://
zamiast https://
), interfejs API nie może bezpiecznie weryfikować instrukcji i nie można upewnić się, że instrukcje witryny nie zostały zmienione przez osobę trzecią. Więcej informacji znajdziesz w specyfikacji technicznych linków do zasobów cyfrowych.
Żądanie HTTP
GET https://digitalassetlinks.googleapis.com/v1/assetlinks:check
Parametry zapytania
Nazwa parametru |
Typ |
Opis |
source |
object(Asset ) |
Źródło hostujące listę instrukcji. Służy do kierowania wywołania funkcji Check() do odpowiedniego źródła. |
relation |
string |
Ciąg zapytania dla relacji. Identyfikujemy relacje z ciągami znaków w formacie <kind>/<detail> , gdzie <kind> musi być jedną ze wstępnie zdefiniowanych kategorii przeznaczenia, a <detail> to swobodny ciąg alfanumeryczny, który opisuje określony przypadek użycia wyrażenia. Bieżącą listę obsługiwanych relacji znajdziesz w dokumentacji interfejsu API. Aby zapytanie odpowiadało linkowi do zasobu, ciągi relacji w zapytaniu i linku do zasobu muszą być dokładnie takie same. Przykład: zapytanie z relacją delegate_permission/common.handle_all_urls pasuje do linku zasobu z relacją delegate_permission/common.handle_all_urls . |
target |
object(Asset ) |
Docelowy komponent wyciągu. |
Treść żądania
Treść żądania musi być pusta.
Treść odpowiedzi
W przypadku powodzenia treść żądania zawiera dane o następującej strukturze:
Komunikat z odpowiedzią na wywołanie CheckAssetLinks.
Zapis JSON |
{
"linked": boolean,
"maxAge": string,
"debugString": string,
} |
Nazwa pola |
Typ |
Opis |
linked |
boolean |
Ustaw wartość „true” (prawda), jeśli zasoby określone w żądaniu są połączone przez relację określoną w żądaniu. WYMAGANE |
maxAge |
string |
Po jakim czasie od wyświetlenia odpowiedź ma być uznawana za prawidłową, z wyłączeniem dalszych aktualizacji. WYMAGANE Czas trwania w sekundach z maksymalnie dziewięcioma cyframi po przecinku, zakończony znakiem „s ”. Przykład: "3.5s" . |
debugString |
string |
Zrozumiały dla człowieka komunikat zawierający informacje, które pomogą użytkownikom zrozumieć, odtworzyć i debugować wynik. Wiadomość będzie w języku angielskim. Obecnie nie planujemy oferować żadnych tłumaczeń. Pamiętaj, że nie możemy zagwarantować co najmniej 1 z treści ani formatu tego ciągu znaków. Jego każdy aspekt może ulec zmianie bez powiadomienia. Nie należy podejmować prób programowej analizy tych danych. Jeśli uważasz, że musisz to zrobić, ponieważ informacje, których potrzebujesz, nie są ujawniane przez interfejs API, najpierw skontaktuj się z nami. |
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2024-06-26 UTC.
[null,null,["Ostatnia aktualizacja: 2024-06-26 UTC."],[[["\u003cp\u003eVerifies the existence of a relationship between two digital assets, like websites and apps.\u003c/p\u003e\n"],["\u003cp\u003eUses the \u003ccode\u003eGET\u003c/code\u003e method with query parameters specifying the source, relation, and target assets.\u003c/p\u003e\n"],["\u003cp\u003eReturns a JSON response indicating if the assets are linked and provides additional debugging information.\u003c/p\u003e\n"],["\u003cp\u003ePrimarily used for security checks and ensuring the integrity of relationships between assets.\u003c/p\u003e\n"],["\u003cp\u003eOffers enhanced security when the source asset is secure (HTTPS or Android app).\u003c/p\u003e\n"]]],[],null,["# Method assetlinks.check\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Query parameters](#body.QUERY_PARAMETERS)\n- [Request body](#body.request_body)\n- [Response body](#body.response_body)\n - [JSON representation](#body.CheckResponse.SCHEMA_REPRESENTATION)\n- [Try it!](#try-it)\n\nDetermines whether the specified (directional) relationship exists between the specified source and target assets.\n\nThe relation describes the intent of the link between the two assets as claimed by the source asset. An example for such relationships is the delegation of privileges or permissions.\n\nThis command is most often used by infrastructure systems to check preconditions for an action. For example, a client may want to know if it is OK to send a web URL to a particular mobile app instead. The client can check for the relevant asset link from the website to the mobile app to decide if the operation should be allowed.\n\nA note about security: if you specify a secure asset as the source, such as an HTTPS website or an Android app, the API will ensure that any statements used to generate the response have been made in a secure way by the owner of that asset. Conversely, if the source asset is an insecure HTTP website (that is, the URL starts with `http://` instead of `https://`), the API cannot verify its statements securely, and it is not possible to ensure that the website's statements have not been altered by a third party. For more information, see the [Digital Asset Links technical design specification](https://github.com/google/digitalassetlinks/blob/master/well-known/details.md).\n\n### HTTP request\n\n`GET https://digitalassetlinks.googleapis.com/v1/assetlinks:check`\n\n### Query parameters\n\n| Parameter name | Type | Description |\n|----------------|-------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `source` | `object(`[Asset](/digital-asset-links/reference/rest/v1/Asset)`)` | The source hosting the statement list. This is used to route the `Check()` call to the proper source. |\n| `relation` | `string` | Query string for the relation. We identify relations with strings of the format `\u003ckind\u003e/\u003cdetail\u003e`, where `\u003ckind\u003e` must be one of a set of pre-defined purpose categories, and `\u003cdetail\u003e` is a free-form lowercase alphanumeric string that describes the specific use case of the statement. Refer to [our API documentation](/digital-asset-links/v1/relation-strings) for the current list of supported relations. For a query to match an asset link, both the query's and the asset link's relation strings must match exactly. Example: A query with relation `delegate_permission/common.handle_all_urls` matches an asset link with relation `delegate_permission/common.handle_all_urls`. |\n| `target` | `object(`[Asset](/digital-asset-links/reference/rest/v1/Asset)`)` | The target asset of the statement. |\n\n### Request body\n\nThe request body must be empty.\n\n### Response body\n\nIf successful, the response body contains data with the following structure:\nResponse message for the CheckAssetLinks call.\n\n| JSON representation |\n|-------------------------------------------------------------------------|\n| ``` { \"linked\": boolean, \"maxAge\": string, \"debugString\": string, } ``` |\n\n| Field name | Type | Description |\n|---------------|-----------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `linked` | `boolean` | Set to true if the assets specified in the request are linked by the relation specified in the request. REQUIRED |\n| `maxAge` | `string` | From serving time, how much longer the response should be considered valid barring further updates. REQUIRED A duration in seconds with up to nine fractional digits, terminated by '`s`'. Example: `\"3.5s\"`. |\n| `debugString` | `string` | Human-readable message containing information intended to help end users understand, reproduce and debug the result. The message will be in English and we are currently not planning to offer any translations. Please note that no guarantees are made about the contents or format of this string. Any aspect of it may be subject to change without notice. You should not attempt to programmatically parse this data. If you feel that you need to do this because the information you need is not otherwise exposed by the API, please contact us first. |\n\nTry it!\n-------\n\nUse the [APIs Explorer](https://developers.google.com/apis-explorer/?discovery_url=/digital-asset-links/v1/discoverydocument.json#p/digitalassetlinks/v1/digitalassetlinks.assetlinks.check?relation=delegate_permission%252Fcommon.handle_all_urls&source.web.site=https%253A%252F%252Fexample.digitalassetlinks.org&target.androidApp.certificate.sha256Fingerprint=10%253A39%253A38%253AEE%253A45%253A37%253AE5%253A9E%253A8E%253AE7%253A92%253AF6%253A54%253A50%253A4F%253AB8%253A34%253A6F%253AC6%253AB3%253A46%253AD0%253ABB%253AC4%253A41%253A5F%253AC3%253A39%253AFC%253AFC%253A8E%253AC1&target.androidApp.packageName=org.digitalassetlinks.sampleapp) to call this method on live data and see the response."]]