2015-11-17 2 views
0

Я пытаюсь отправить запрос на отправку по http с помощью сообщения ajax на геосервер. Я получаю следующую ошибку в хроме.Ошибки при использовании запроса на отправку ajax на geoserver

Uncaught SyntaxError: Unexpected identifier 

, когда я использую данные: --my query-- и

Uncaught SyntaxError: Unexpected token ILLEGAL 

, когда я использую данные: --my query--.

Я вижу, что это ошибка из-за закрытия тега, например: </ogc:PropertyName>

Это мой код:

$.ajax({ 
    type: "POST", 
    url: "http://localhost/geoserver", 
    data: ' 
    <wfs:GetFeature 
     xmlns:wfs="http://www.opengis.net/wfs"  
     xmlns:ogc="http://www.opengis.net/ogc" 
     service="WFS" version="1.1.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd" 
     maxFeatures= "13" > 
     <wfs:Query typeName="*:MyFeatures_df16" xmlns:feature="http://www.openplans.org/topp"> 
      <ogc:Filter> 
      <ogc:And> 
       <ogc:Or> 
       <ogc:PropertyIsEqualTo> 
        <ogc:PropertyName>ID</ogc:PropertyName> 
        <ogc:Literal>98400005701</ogc:Literal> 
       </ogc:PropertyIsEqualTo> 
       </ogc:Or>     
      </ogc:And> 
      </ogc:Filter> 
     </wfs:Query> 
     </wfs:GetFeature> ', 
    contentType: "text/xml", 
    dataType:"text", 
    crossDomain: true, 
    cache: false, 
    error: function() {alert('it doesnt work')}, 
    success: function(result){ $("#div1").html(result);} 
    }); 
}); 
}); 
+0

@ user3714840 Что не так с пробелами в URL? – Pogrindis

ответ

0
$.ajax({ 
    type: "POST", 
    url: "http://localhost/geoserver", 
    data: 'http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd" maxFeatures= "13" > ID 98400005701', 
    contentType: "text/xml", 
    dataType:"text", 
    crossDomain: true, 
    cache: false, 
    error: function() {alert('it doesnt work');}, 
    success: function(result){ $("#div1").html(result); } 
}); 

Если вы на самом деле отформатировать его должным образом, вы можете видеть Вас» пропуская какую-то запятую и прочее. Я не знаю, что вы пытаетесь сделать с вашими данными, но, вероятно, там, где это происходит неправильно.

+0

Его HTTP-запрос, почему я буду использовать запятые. Я чувствую, что получаю эту ошибку в, из-за закрывающего тега. В моем редакторе код из этого закрытого тега не распознается как скрипт. –

1

Вы не называете свои данные, которые вы отправляете в свой вызов Ajax, и вы отправляете строку без ключа. В вашем случае я бы либо передал строку с ключом или объектом.

  • Строка: 'XML = данные'
  • Объект: {XML: 'данные'}

Источник - http://api.jquery.com/jquery.ajax/

попытка -

data: { xml: encodeURIComponent(' 
    <wfs:GetFeature 
     xmlns:wfs="http://www.opengis.net/wfs"  
     xmlns:ogc="http://www.opengis.net/ogc" 
     service="WFS" version="1.1.0" 
     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
     xsi:schemaLocation="http://www.opengis.net/wfs http://schemas.opengis.net/wfs/1.0.0/WFS-transaction.xsd" 
     maxFeatures= "13" > 
     <wfs:Query typeName="*:MyFeatures_df16" xmlns:feature="http://www.openplans.org/topp"> 
      <ogc:Filter> 
      <ogc:And> 
       <ogc:Or> 
       <ogc:PropertyIsEqualTo> 
        <ogc:PropertyName>ID</ogc:PropertyName> 
        <ogc:Literal>98400005701</ogc:Literal> 
       </ogc:PropertyIsEqualTo> 
       </ogc:Or>     
      </ogc:And> 
      </ogc:Filter> 
     </wfs:Query> 
     </wfs:GetFeature> ')} 
+0

Я тоже пробовал это, даже если этот вопрос решить. –

+0

@aksharareddy попробуйте кодировать строку перед отправкой, а затем декодировать на сервере. проверьте обновленный ответ – Joseph118

+0

@aksharareddy, если это не сработает, проверьте в конце вашего кода ... у вас есть лишняя фигурная и закрывающая скобка. – Joseph118

Смежные вопросы