Veröffentlichung von PHP Flask

stimmen
0

Geben

Ich habe eine PHP-Anwendung in einem Kolben-App, die Beiträge variable info (die einige Berechnungen tut und gibt ein Ergebnis zurück). Ich laufe sowohl lokal auf win7

Wenn ich die URL „127.0.0.1:5000/index“ teste einen Beitrag mit Postbote verwenden, bekomme ich einen 200-Statuscode (Screenshot). Allerdings, wenn die PHP-App Beiträge in den Kolben App erhalte ich:

The requested URL was not found on the server. If you entered the URL manually please check your spelling and try again.

Ich bin mit CURL und die ausführliche Ausgabe ist:

* About to connect() to 127.0.0.1 port 5000 (#0)
*   Trying 127.0.0.1...
* connected
* Connected to 127.0.0.1 (127.0.0.1) port 5000 (#0)
> POST /index/ HTTP/1.1
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0)
Host: 127.0.0.1:5000
Accept: */*
Content-Length: 338
Expect: 100-continue
Content-Type: multipart/form-data; boundary=----------------------------d5cb02e2edea
< HTTP/1.1 100 Continue
* HTTP 1.0, assume close after body
< HTTP/1.0 404 NOT FOUND
< Content-Type: text/html
< Content-Length: 233
< Server: Werkzeug/0.10.4 Python/2.7.5

Mein PHP-Code wie folgt aussieht:

   $data= array('a'=>$a, 'token'=>$token);
   $url=http://127.0.0.1:5000/index/;
   $output = $this->my_model->get_data($url, $data);

public function get_data($url,$postFieldArray=FALSE) {

$ch = curl_init();
curl_setopt($ch, CURLOPT_COOKIEJAR, $cookieFile);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_USERAGENT, Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0));
if ($postFieldArray!= FALSE) {
    curl_setopt($ch, CURLOPT_POST, TRUE);
    curl_setopt($ch, CURLOPT_POSTFIELDS, $postFieldArray); //for django
}
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_VERBOSE, true);
curl_setopt($ch, CURLOPT_STDERR, $verbose);
curl_setopt($ch, CURLOPT_URL, $url);
$html = curl_exec($ch);
curl_close($ch);
.......

return $result;
}

Vereinfachte Flask App:

app = Flask(__name__)
app.debug = True

@app.route('/')
def hello_world():
    return 'Hello World!'

@app.route('/index',methods=['POST'])
def index():

    token = request.form['token']
    a = request.form['a']
    ......
    return

if __name__ == '__main__':
    app.run()

Was mache ich falsch?

Veröffentlicht am 26/06/2015 um 13:43
vom benutzer
In anderen Sprachen...                            


1 antworten

stimmen
1

Sie haben einen Schrägstrich in den $urlVariablen in dem PHP - Code. Das wird nicht funktionieren, weil Sie keinen Schrägstrich in Ihrem Flask - Code. Schauen Sie hier für weitere Informationen unter der Rubrik „Unique URLs / Redirection Behavior“

Beantwortet am 27/06/2015 um 10:47
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more