Realizar busca dentro de um arquivo XML remoto
Galera, preciso buscar um XML que está em outro servidor, e realizar uma busca para exibir os resultados referentes à palavra buscada.
Peguei um código na net e modifiquei. Não está funcionando.
Nada aparece. Nem erro.
Código:
<%
'SETO O CAMINHO PARA O BANCO
'path = Server.MapPath("http://URLDOXML")
PalavraBusca = request.form("pesquisa")
'Instancia o objeto HttpRequest.
Set objSrvHTTP = Server.CreateObject("MSXML2.XMLHTTP.3.0")
'Informe o método e a URL a ser capturada
objSrvHTTP.open "GET", "http://URLDOXML", false
'Com o método setRequestHeader informamos o cabeçalho HTTP
objSrvHTTP.setRequestHeader "Content-Type", "text/xml"
'O método Send envia a solicitação HTTP e exibe o conteúdo da página
objSrvHTTP.Send()
'Amazenamos o resultado na variável strXML
path = objSrvHTTP.ResponseXML.xml
Set objXML = Server.CreateObject("MSXML2.DOMdocument.4.0")
objXML.async = false
objXML.loadXML(strXML)
'response.write path
'SE O ARQUIVO EXISTIR
'If objSrvHTTP(path) Then
'EU SETO AS PROPRIEDADES PARA ENTENDER O XPATH
Set raiz = objXML.documentElement
objXML.setProperty "SelectionLanguage", "XPath"
'acBusca É A VARIAVEL QUE RECEBE A STRING QUE VAMOS PROCURAR NO ARQUIVO XML, NESSE CASO A PALAVRA CARLOS.
'EU COLOQUEI ELA COM ESPACOS NO COMEÇO E NO FIM PARA NÃO ACHAR PALAVRAS COMO "UZCARLOSA" O.o
acBusca= chr(32)&PalavraBusca&chr(32)
response.write acbusca
'AGORA DEFINIMOS A NOSSA XPATH CAMINHANDO ENTRE OS NODES DO ARQUIVO XML
'VAMOS EXCLUIR DA SELEÇÃO OS RESULTADOS QUE NÃO POSSUAM NO TEXTO A NOSSA VARIÁVEL
Dim xpath
xpath = "ofertas/oferta/titulo[titulo!=contains(concat(' ',text(),' '),'"&acBusca&"')]"
'AQUI PARA QUEM SABE XML E ASP NÃO TEM PROBLEMA
For Each campo in objXML.selectNodes(xpath)
Response.Write "titulo" & VbCrLf
Response.Write campo.ChildNodes.Item(1).Text &"<br>"& VbCrLf
Next'Else
' Response.Write doc.parseError.reason
'End If
%>
Alguém pode ver o que tá errado ai?
Discussão (2)
Carregando comentários...