Cómo: Registrar un complemento de controlador de archivos manualmenteHow to: Register a file handler add-in manually

Para desarrollar un complemento de controlador de archivos, primero necesita cargar el manifiesto del controlador de archivos en el registro de la aplicación en Azure Active Directory.To develop a file handler add-in you first need to upload your file handler manifest into your app registration in Azure Active Directory. Esto puede realizarse mediante programación o a través del editor de manifiestos de aplicación de Azure Active Directory.This can be done programmatically or through the Azure Active Directory app manifest editor.

Manifiesto de la aplicación y la propiedad addInsApp manifest and the addIns property

Los manifiestos del controlador de archivos se almacenan junto al manifiesto de la aplicación en Azure Active Directory. La propiedad addIns del manifiesto de la aplicación muestra los componentes de complemento de una aplicación, como controladores de archivos y sus propiedades asociadas.File handler manifests are stored along side your app manifest in Azure Active Directory. The addIns property of the app manifest lists the add-in components of an application, like file handlers, and their associated properties.

El manifiesto se compone de un conjunto de propiedades clave-valor, que definen las propiedades del controlador de archivos. Para obtener más información sobre el manifiesto del controlador de archivos, vea Información general del controlador de archivos.The manifest is made up of a set of key-value properties, which define the properties of the file handler. For more information about the file handler manifest, see File handler overview.

Un manifiesto del controlador de archivos de ejemplo:An example file handler manifest:

{
"id": "968A844F-7A47-430C-9163-07AE7C31D407",
"type": "FileHandler",
"properties": [
    { "key": "version", "value": "2" },
    { "key": "fileTypeDisplayName", "value": "Display name of the file format" },
    { "key": "fileTypeIcon", "value": "{\"svg\":\"https://example.org/icon.svg\",\"png1x\":\"https://example.org/icon@1x.png\",\"png1.5x\":\"https://example.org/icon@1.5x.png\",\"png2x\":\"https://example.org/icon@2x.png\"}" },
    { "key": "appIcon", "value": "{\"svg\":\"https://example.org/app-icon.svg\",\"png1x\":\"https://example.org/app-icon@1x.png\",\"png1.5x\":\"https://example.org/app-icon@1.5x.png\",\"png2x\":\"https://example.org/app-icon@2x.png\"}" },
    { "key": "actions", "value": "json string of additional actions"}
  ]
}

Para registrar un controlador de archivos, necesita actualizar la colección addIns en el manifiesto de la aplicación almacenado en Azure Active Directory.To register a file handler, you need to update the addIns collection in the app manifest stored in Azure Active Directory.

Actualizar el manifiesto de la aplicación en AADUpdating App Manifest in AAD

Este método requiere que actualice el manifiesto JSON directamente en AAD.This method requires you to update the JSON manifest directly in AAD.

  1. Navegar a la aplicación en Azure Active DirectoryNavigate to the application in Azure Active Directory
  2. Selecciona la opción del menú de la izquierda "manifiesto"Select the "Manifest" left menu option
  3. Pegue el controlador de archivos Add-In JSON en la matriz "addIns" como se muestra a continuación:Paste your File Handler Add-In JSON into the "addIns" array as shown below:
{
    "id": "9280aaa1-65c3-4a01-9ced-4f3e8e989c56",
    "acceptMappedClaims": null,
    "accessTokenAcceptedVersion": 2,
    "addIns": [
        {
            "id": "328486ea-7159-4b6a-a2aa-f036b2423b23",
            "type": "FileHandler",
            "properties": [
                {
                    "key": "version",
                    "value": "2"
                },
                {
                    "key": "fileTypeDisplayName",
                    "value": "Contoso Markdown"
                },
                {
                    "key": "fileTypeIcon",
                    "value": "{\"svg\":\"https://localhost:3000/images/icons/icon.svg\",\"png1x\":\"https://localhost:3000/images/icons/icon@1x.png\",\"png1.5x\":\"https://localhost:3000/images/icons/icon@1.5x.png\",\"png2x\":\"https://localhost:3000/images/icons/icon@2x.png\"}"
                },
                {
                    "key": "appIcon",
                    "value": "{\"svg\":\"https://localhost:3000/images/icons/app-icon.svg\",\"png1x\":\"https://localhost:3000/images/icons/app-icon@1x.png\",\"png1.5x\":\"https://localhost:3000/images/icons/app-icon@1.5x.png\",\"png2x\":\"https://localhost:3000/images/icons/app-icon@2x.png\"}"
                },
                {
                    "key": "actions",
                    "value": "[{\"type\":\"newFile\",\"url\":\"https://localhost:3000/markdown/create\",\"availableOn\":{\"file\":{\"extensions\":[\".md\"]},\"web\":{}}},{\"type\":\"open\",\"url\":\"https://localhost:3000/markdown/edit\",\"availableOn\":{\"file\":{\"extensions\":[\".md\"]},\"web\":{}}},{\"type\":\"preview\",\"url\":\"https://localhost:3000/markdown/preview\",\"availableOn\":{\"file\":{\"extensions\":[\".md\"]},\"web\":{}}}]"
                }
            ]
        }
    ],
  "allowPublicClient": true,
  remainder omitted...
}
  1. Seleccione "guardar" en la barra de menús superiorSelect "Save" from the top menu bar

Uso de Microsoft Graph para registrar un controlador de archivosUsing Microsoft Graph to Register a File Handler

Puede actualizar mediante programación un registro de la aplicación de AAD para agregar el manifiesto del controlador de archivos.You can programmatically update an AAD Application Registration to add the File Handler manifest. Esto requiere dos aplicaciones existentes: la aplicación del controlador de archivos y una aplicación con Directory.ReadWrite.All permisos para permitir actualizaciones en el registro del controlador de archivos.This requires two existing applications - the File Handler application and an application with Directory.ReadWrite.All permissions to allow updates to the File Handler registration.

  1. Tendrá que adquirir un token de portador para obtener acceso a Microsoft Graph.You will need to acquire a bearer token to access Microsoft Graph. Para obtener más información sobre token, consulte los documentos de tokens de AAD. Este token debe incluir los Directory.ReadWrite.All permisos mencionados anteriormente.To read more about token please see the AAD tokens docs. This token must include the Directory.ReadWrite.All permissions as mentioned above.

  2. Anote el identificador de objeto de la aplicación que representa el registro del controlador de archivos en el que se insertará el manifiesto.Note the Object ID of the application that represents the file handler registration into which the manifest will be injected. Se puede encontrar en la página "información general" del registro de la aplicación y es diferente del identificador de la aplicación.This can be found on the "Overview" page of the application registration and is different from the Application Id.

  3. Ahora, usando el token del paso 1 y el identificador de objeto del paso 2, puede realizar una solicitud PUT para https://graph.microsoft.com/v1.0/applications/${objectId}/addIns incluir el manifiesto en el cuerpo tal y como se muestra.Now using the token from step 1 and the Object ID from step 2 you can make a PUT request to https://graph.microsoft.com/v1.0/applications/${objectId}/addIns including the manifest in the body as shown.

PUT https://graph.microsoft.com/v1.0/applications/${objectId}/addIns HTTP/1.1
Authorization: Bearer ${AAD Token}
Accept: application/json
Content-Type: application/json

{
  "value": [{
      {
        "id": "968A844F-7A47-430C-9163-07AE7C31D407",
        "type": "FileHandler",
        "properties": [
            { "key": "version", "value": "2" },
            { "key": "fileTypeDisplayName", "value": "Display name of the file format" },
            { "key": "fileTypeIcon", "value": "{\"svg\":\"https://example.org/icon.svg\",\"png1x\":\"https://example.org/icon@1x.png\",\"png1.5x\":\"https://example.org/icon@1.5x.png\",\"png2x\":\"https://example.org/icon@2x.png\"}" },
            { "key": "appIcon", "value": "{\"svg\":\"https://example.org/app-icon.svg\",\"png1x\":\"https://example.org/app-icon@1x.png\",\"png1.5x\":\"https://example.org/app-icon@1.5x.png\",\"png2x\":\"https://example.org/app-icon@2x.png\"}" },
            { "key": "actions", "value": "json string of additional actions"}
        ]
        }
  }]
}

Ahora que el manifiesto del controlador de archivos se ha registrado con su aplicación en AAD, puede seguir creando y probando su complemento del controlador de archivos.Now that your file handler manifest has been registered with your application in AAD, you can proceed to building and testing your file handler add-in.

Nota

Puede ver un ejemplo completo de cómo adquirir un token, crear una aplicación y registrar el complemento de controlador de archivos en las herramientas del ejemplo de NodeJS.You can see a full example of acquiring a token, creating an application, and registering the file handler add-in in the Nodejs sample's tools.

Importante

Los cambios en el manifiesto del controlador de archivos pueden tardar 24-48 horas en aparecer.Changes to the file handler manifest can take 24-48 hours to appear. Vea Refresh file handler cache (Actualizar la caché del controlador de archivos) para obtener información sobre cómo forzar la caché para que se borre por motivos de desarrollo.See Refresh file handler cache for information about how to force the cache to be cleared for development purposes.