Obtener transacciones pendientes a una dirección/contrato determinado

¿Hay alguna manera de que pueda enviar todas las transacciones pendientes a una dirección/contrato determinado? Podría obtener las transacciones confirmadas explorando transacciones en bloques recientes. Pero, ¿cómo haría para obtener transacciones actuales pendientes y no confirmadas en una dirección/contrato específico?

Por ejemplo, puedo ir a https://etherscan.io/address/ y puedo ver "(pendiente) hace 6 segundos". ¿Cómo determina etherscan.io esto? Me gustaría hacer esto yo mismo. ¿Necesito ejecutar un nodo? Un amigo mencionó algo sobre un oyente, pero no estoy seguro si esa es la dirección correcta.

******* Editar ********

Esta API de etherscan no parece devolver ninguna transacción pendiente. Los únicos en un bloque. Pero su sitio web muestra claramente las transacciones pendientes...

http://api.etherscan.io/api?module=account&action=txlist&address=0x1234.....5678&startblock=4271910&endblock=99999999&sort=asc&apikey=KEYGOESHERE

Respuestas (1)

Eche un vistazo aquí Comprender mejor las transacciones

Los nodos completos escuchan y transmiten transacciones. Como nodo completo, recibe y puede mostrar las transacciones pendientes en su grupo de transacciones. Eso es lo que hace etherscan. Tal vez no pueda acceder a él a través de su API, su elección.

Por lo tanto, puede obtener algunas de las transacciones pendientes como un nodo, pero no puede elegir, y lo más probable es que algunas transacciones se hayan incluido en un bloque antes de que le lleguen en estado pendiente.

Gracias por el enlace. Leeré más. Entonces, si los nodos completos ni siquiera ven todas las transacciones pendientes, eso significaría que incluso el sitio de etherscan (que puede estar ejecutando un nodo completo) no podría mostrarle el 100% de todas las transacciones pendientes, ¿correcto?
Sí, tan pronto como la transacción se extrae en un bloque, los nodos no tienen por qué mantenerla en la cola pendiente ni transmitirla, ni a usted ni a etherscan.
Entiendo que un bloque extraído ya no está en la cola pendiente. Estoy preguntando si: ¿puede un nodo ver todas las transacciones pendientes en toda la red? Y también, ¿el sitio web de etherscan (suponiendo que es solo una ventana a un nodo completo) no tiene visibilidad de todas las transacciones pendientes en toda la red? Entonces, si el nodo A registra una transacción como pendiente, ¿ve el nodo B/C/D que el nodo A tiene una transacción pendiente?
No entiendes cómo funcionan las redes peer to peer. Usted está conectado a algunos pares, ellos mismos están conectados a algunos pares, y usted transmite a sus pares, ellos mismos transmiten a otros nodos, hasta que sucede algo. NO hay almacenamiento central para transacciones pendientes que pueda consultar. Si estuviera conectado a muchos pares, vería venir más transacciones. Puede imaginar tratar de tener todos los nodos completos como pares, hay alrededor de 24k. No significa que se le garantice que recibirá todas las transacciones, pero eso es lo más cercano que podría hacer, supongo.