Skip to main content
cancel
Showing results for 
Search instead for 
Did you mean: 

Get Fabric Certified for FREE during Fabric Data Days. Don't miss your chance! Learn more

Reply
Anonymous
Not applicable

Acceda a los datos desde post API

Hola a todos

Necesito acceder a los datos desde la API POST proporcionada por el cliente.

Tengo la información proporcionada por el cliente:

Verbo: POST

DEV Endpoint: https://clientwebsitename.azurewebsites.net/dev/masterdata/departments/get

Encabezado requerido: X-Token (pasar el JWT del usuario)

JSON devuelto tiene un elemento denominado uiList que contiene una lista de todos los departamentos permitidos.

¿Puede alguien por favor ayudar a cómo acceder a los datos de esta API proporcionada, he intentado la mayoría, pero devuelve un error 404.

Gracias

1 ACCEPTED SOLUTION
Anonymous
Not applicable

HI @atul-patil,

>>DataSource.Error: los datos descargados son HTML, que no es el tipo esperado. La dirección URL puede ser incorrecta o es posible que no haya proporcionado las credenciales correctas al servidor.

Tal vez este problema aparece cuando intenta utilizar el conector incorrecto para reconocer los datos de respuesta.
Me gustaría sugerirle la navegación al paso "Origen" para confirmar el tipo de resultado y cambiar al conector correspondiente en los pasos siguientes para reconocer/análisis de registros.

saludos

Xiaoxin Sheng

View solution in original post

15 REPLIES 15
Anonymous
Not applicable

HI @atul-patil,

Puede echar un vistazo al siguiente vínculo sobre el uso de un conector web para obtener datos de la API de la resto con autorizaciones:

Extraer datos de una autenticación de API REST

Código de ejemplo:

 let
	 token = 'your token',
	 body= 'request body',
	 url = "https://clientwebsitename.azurewebsites.net/",
	 Source = Web.Contents(url,
		 [
			 Headers = [#"X-Token"=token],
			 RelativePath="dev/masterdata/departments/get",
			 Content = Text.ToBinary(body) 
		 ]
	 )
 in
	Source

saludos

Xiaoxin Sheng

Anonymous
Not applicable

Hola @v-shex-msft,

Gracias por la respuesta, he probado el código que ha proporcionado, pero da el siguiente error-

Expression.Error: el encabezado 'X-Token' solo se admite cuando se conecta de forma anónima. Estos encabezados se pueden utilizar con todos los tipos de autenticación: Accept, Accept-Charset, Accept-Encoding, Accept-Language, Cache-Control, Content-Type, If-Modified-Since, Prefer, Range, Referer.

He probado en el cartero y funciona, qué proceso he utilizado en el cartero como abajo-

1. Tengo URL para obtener Token: (jwt)

URL: https://Clientwebsite.azurewebsites.net/dev/auth/user/authenticate

aquí he proporcionado la carga útil, así

2. Luego otra URL para obtener los Datos

URL: https://Clientwebsite.azurewebsites.net/dev/masterdata/departments/get

aquí he proporcionado Kayname (X-Token) y jwd Token (generado desde el 1er paso).

Por favor, ayúdame a recuperar los datos.

Gracias

Anonymous
Not applicable

Hola @atul-patil,

Parece que necesita agregar el primer estreptococo en la tabla de consulta para obtener el token de acceso y usar en los pasos siguientes, intento modificar la fórmula para agregar el primer paso a la fórmula:

 let
	url = "https://clientwebsitename.azurewebsites.net/",
	// Uses the Twitter POST oauth2/token method to obtain a bearer token
	GetJson = Web.Contents(url,
		[
			Headers = [#"Authorization"=authKey, #"Content-Type"="application/json"],//use the sent parameters and name as you do in postman to replace current Authorization			 
			RelativePath="dev/auth/user/authenticate"
		]
	),
	token = Json.Document(GetJson)['token name'],//use tokne name to repalce 'tokne name' part to extract the responsed token
	Source = Web.Contents(url,
		 [
			 Headers = [#"X-Token"=token, #"Content-Type"="application/json"],
			 RelativePath="dev/masterdata/departments/get"
		 ]
	 ),
	Result=Json.Document(Source)
 in
	Result

Por cierto, ¿cómo publicó las autorizaciones en sus solicitudes? ¿En el encabezado, cuerpo o concatenar en cadena de consulta? Mi fórmula es add authorized en los encabezados y puede que no sea adecuada para todos los escenarios.

Blog de BI de Chris Webb
saludos

XIaoxin Sheng

Anonymous
Not applicable

Hola @v-shex-msft,

Gracias por la sugerencia, Pero da el error,

Lo que he intentado:

Dejar
url "https://clientwebsitename.azurewebsites.net/",
cuerpo de cuerpo "
""grant_type"": ""client_credentials"",
""TenantId"": ""Client2"",
""UserSignon"": ""corp2019"",
""Contraseña"": ""prueba""
}",
GetJson - Web.Contents(url,
[
Encabezados á ["Content-Type" ,"application/raw"],
Content-Text.ToBinary(body),//use los parámetros y el nombre enviados como lo hace en el cartero para reemplazar la Autorización actual
RelativePath"dev/auth/user/authenticate"
]
),
token : Json.Document(GetJson)['jwt'],
Fuente: Web.Contents(url,
[
Encabezados á ['X-Token''token' ,'Tipo de contenido''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
RelativePath"dev/masterdata/departments/get"
]
),
Resultado-Json.Document(Origen)
En
Resultado

La consulta se ejecuta correctamente cuando se suprime el ['jwt'] de la 2a consulta y generó el 2 token con el valor como se muestra a continuación

Token.png

El problema es ['jwt] no se trabaja, da error como "Identificador no válido".

Gracias

Anonymous
Not applicable

Hola @atul-patil,

Mi culpa, parece que agregué caracteres adicionales '' en la fórmula de muestra. De hecho, los caracteres '' no son necesarios. Utilice [jwt] para reemplazar ['jwt'] e inténtelo de nuevo.

BTW, por favor haga una máscara en los datos confidenciales de su ejemplo formal y las instantáneas.

saludos

Xiaoxin Sheng

Anonymous
Not applicable

Gracias @v-shex-msft,

Pero sigue mostrando el siguiente error:

DataSource.Error: los datos descargados son HTML, que no es el tipo esperado. La dirección URL puede ser incorrecta o es posible que no haya proporcionado las credenciales correctas al servidor.

Gracias

Anonymous
Not applicable

HI @atul-patil,

>>DataSource.Error: los datos descargados son HTML, que no es el tipo esperado. La dirección URL puede ser incorrecta o es posible que no haya proporcionado las credenciales correctas al servidor.

Tal vez este problema aparece cuando intenta utilizar el conector incorrecto para reconocer los datos de respuesta.
Me gustaría sugerirle la navegación al paso "Origen" para confirmar el tipo de resultado y cambiar al conector correspondiente en los pasos siguientes para reconocer/análisis de registros.

saludos

Xiaoxin Sheng

Anonymous
Not applicable

Gracias @v-shex-msft

Ahora funciona.

Muchas gracias.

lbendlin
Super User
Super User

Su solicitud está incompleta. POST requiere una carga en el cuerpo de la solicitud.

Anonymous
Not applicable

Hola @lbendlin,

Gracias por la respuesta.

Sí tengo otro enlace, así como la carga útil contiene el nombre de usuario y la contraseña para acceder a los datos desde el enlace dado

Gracias

Este es un ejemplo. Utilice Json.FromValue para codificar en binario la carga útil

Dejar
URL : "http://xxx/tstat",
encabezados de encabezados de la dirección de encabezados ['Content-Type'"'application/json"],
data á Json.FromValue([tmode ? 2,t_cool - Setpoint,hold - 0]),
Web - Web.Contents(URL, [ Contenido - datos, Encabezados - encabezados, ManualStatusHandling ? 404, 400o]),
resultado: Json.Document(web)

En

Resultado

Anonymous
Not applicable

Hola @lbendlin,

Lo siento, pero soy nuevo en este proceso, ¿puede decirme dónde puedo usar este código?

Se trata de Power Query (también denominado M). Se usa para conectarse a los orígenes de datos.

Si es nuevo en Power BI, es posible que desee comenzar con un proyecto más fácil. La ejecución de llamadas POST es bastante avanzada.

Anonymous
Not applicable

Hola @lbendlin

Lo siento, es mi culpa, quiero decir, ¿es necesario escribir en el editor de avances de Power Query Editor?

También tiene una pregunta, Dónde agregar el nombre de encabezado (es decir, X-Token) y el token jwd generados a partir de la carga.

Sí, esto va en el editor avanzado. Lo mismo para el encabezado (como se muestra en el ejemplo)

Cuando obtenga los datos de la llamada POST, debe analizarlo según sea necesario. Una vez más esto se hace en el mismo editor avanzado.

Helpful resources

Announcements
Fabric Data Days Carousel

Fabric Data Days

Advance your Data & AI career with 50 days of live learning, contests, hands-on challenges, study groups & certifications and more!

October Power BI Update Carousel

Power BI Monthly Update - October 2025

Check out the October 2025 Power BI update to learn about new features.

FabCon Atlanta 2026 carousel

FabCon Atlanta 2026

Join us at FabCon Atlanta, March 16-20, for the ultimate Fabric, Power BI, AI and SQL community-led event. Save $200 with code FABCOMM.