2012-01-23 2 views
0

У меня есть клиент PHP, который должен запрашивать наборы данных из службы, использующей .NET. Итак, я пытался сделать запрос, передав поле POST под названием «запрос». Внутри этой переменной у меня есть строковая версия документа XML. Что происходит сейчас, так это то, что всякий раз, когда я передавал этот запрос на сервер, он выдавал мне исключения: «Данные на корневом уровне недействительны». и укажите на последнюю строку моего XML-документа.XmlException: данные на корневом уровне недействительны

Любые советы?

Вот XML

<?xml version="1.0" encoding="utf-8"?> 
<Predicate> 
    <ComparisonPredicate name="like" isEnabled="True" id="" DistinctIndividualQueries="False"> 
    <FacetOperand reference="TriggeredAlerts.Alert.Name"/> 
    <Comparison operation="like"/> 
    <ValueOperand type="System.String" value="Sample"/> 
    </ComparisonPredicate> 
</Predicate> 

Вот var_dump()

string(335) "<?xml version="1.0" encoding="utf-8"?> 
<Predicate> 
    <ComparisonPredicate name="like" isEnabled="True" id="" DistinctIndividualQueries="False"> 
    <FacetOperand reference="TriggeredAlerts.Alert.Name"/> 
    <Comparison operation="like"/> 
    <ValueOperand type="System.String" value="TestAlert"/> 
    </ComparisonPredicate> 
</Predicate> 
" 
+0

Пахнет как отсутствующий или недействительный закрывающий тег в корневом элементе документа для меня ... Можете ли вы опубликовать XML-документ, который вы пытаетесь проанализировать? – DaveRandom

+0

@DaveRandom Добавлен образец XML –

+1

Я не вижу ничего плохого в документе, можете ли вы показать 'var_dump()' переменной, которая содержит ваш XML? – DaveRandom

ответ

0

Я просто понял это и решение было использовать fsocksopen вместо завитков. У меня нет точного ответа для этого, но когда я использовал завиток, он добавил некоторые дополнительные материалы к моему контенту; длина моего контента была значительно больше, чем предполагалось на самом деле.

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