Meteor: trigger template.event to call an external server with react in blaze template

I have to add a react component to a Meteor app (react in a blaze component) (Meteor Guide), to make it simple the component is a button that should trigger the events to send the input to a different server. If I try to make the HTTP call from the client but I get the cross-origin error. Therefore I need to make the API call from the meteor server.

The flow of the request should be this:

Button clicked -> trigger template events ->‘HTTPRequest’, POST, url, data) -> save response in Meteor Mongo db and send to the react redux store

The problem I encountered is that I don’t find a way to trigger the event from the react application.

The following file are frontend.

React App:

import React from 'react';

const App = () => {
    return <button onClick={...trigger the event...}> Run </button>

export default App;

Meteor file test.html:

<template name="test">
        <div>{{> React component=App onClick=onClick}}</div>

Meteor test.js

import App from './App.js';

	App() {
		return App;
    'click send-code': (url, data) => {'HTTPRequest', 'POST', url, data);



import { HTTP } from 'meteor/http';

    'HTTPRequest'(method, url, data) {
        return new Promise((resolve, reject) => {
            try {
      , url, data || {}, (error, result) => {
                    if (error) {

            } catch (e) {

Is there a way to call the server-side method (runner.js) directly from the react part?

If no how can I trigger the event to call the server method from react?

How can I pass data from react component to the API call and save it back?

Thank you!