Einzelnen Beitrag anzeigen
  #2 (permalink)  
Alt 02-12-2014, 06:12
dor557
 Registrierter Benutzer
Links : Onlinestatus : dor557 ist offline
Registriert seit: Dec 2014
Beiträge: 2
dor557 befindet sich auf einem aufstrebenden Ast
Standard Problem erkannt, Problem gebannt !

Also !

Der fehler war nicht das curl die URL nicht gefunden hatte sondern das ich die session_id an das CURL script mit übergeben habe !

da aber 2 scripts nicht gleichzeitig auf die SESSION daten zugreifen dürfen (was aber in meinem fall notwendig war) und die daten schreibgeschützt waren hat sich der CURL aufruf aufgehängt.

nun zu meiner Frage warum es mal ging und mal nicht.

wenn ich mich mit den fb daten eingeloggt hatte gab es keine fehlermeldung da die session nicht übergeben wurde. (warum auch immer) auf jeden fall hat das script dann eine neue session geschrieben und ich bekam nur die antwort das der TOKEN nicht gefunden wurde.

Logisch....

jetzt wie hab ich das gelöst ?

in dem Jeweiligen script was mittels CURL aufgerufen wird am ende der datei folgende zeile eingefugt :
PHP-Code:
session_write_close(); 
allerdings musste ich das auch in meiner SDK einbauen :

PHP-Code:
    function init($func) {
         
session_write_close();
         
$this->ch curl_init();
         
curl_setopt($this->chCURLOPT_HTTPHEADER, array(
              
'Content-Type: application/json',
              
'X-Parse-Application-Id: '.$this->TT_APP_ID,
              
'X-Parse-REST-API-Key: '.$this->TT_API_KEY
         
));
         
         
curl_setopt_array($this->ch, array(
           
CURLOPT_RETURNTRANSFER => 1,
           
CURLOPT_NOSIGNAL => 1,
           
CURLOPT_URL => $this->TT_URL.''.$func,
           
CURLOPT_USERAGENT => $_SERVER['HTTP_USER_AGENT'],
           
CURLOPT_POST => 1,
           
CURLOPT_CONTENT_TYPE => 'application/json'
         
));
        }

        function 
post_data($data) {       
          
$dataString json_encode($data);
          
curl_setopt($this->chCURLOPT_POSTFIELDS$dataString);
          
curl_setopt($this->chCURLOPT_CONNECTTIMEOUT ,10); 
          
curl_setopt($this->chCURLOPT_TIMEOUT10); 
          
$response curl_exec($this->ch);
          if (
$response === false) {
            
$result['error']['curl'] = curl_error($this->ch);
            
$result['error']['url'] = curl_getinfo($this->chCURLINFO_EFFECTIVE_URL);
          }
          
$res_code curl_getinfo($this->chCURLINFO_HTTP_CODE);
          
$result['error']['url'] = curl_getinfo($this->chCURLINFO_EFFECTIVE_URL);
          
curl_close($this->ch);
          
$result['error']['code'] = $res_code;
          
$result['error']['Message'] = 'Fehler !';
          
session_start();
          
$result['response'] = json_decode($response,true);
          return 
$result;
        } 
nachdem dann curl abgeschlossen wurde habe ich die session mit "session_start()" wieder schreibfähig gemacht.

und alle probleme waren gelöst.

sollte da ein Profi evtl etwas zu verbessern haben bin ich gerne bereit dieses zu berücksichtigen !

gruss sascha
Mit Zitat antworten