3

私はミュールスタジオを使用しており、その例を試しています。

HTTP ブラウザ リクエストを実行するたびに、2 つのリクエストが同時に送信されます。最初のリクエストは /favicon.ico で、2 番目のリクエストは実際のリクエストです。

私の構成XMLは次のとおりです。

<?xml version="1.0" encoding="UTF-8"?>

<mule xmlns="http://www.mulesoft.org/schema/mule/core" xmlns:http="http://www.mulesoft.org/schema/mule/http" xmlns:file="http://www.mulesoft.org/schema/mule/file" xmlns:jms="http://www.mulesoft.org/schema/mule/jms" xmlns:doc="http://www.mulesoft.org/schema/mule/documentation" xmlns:spring="http://www.springframework.org/schema/beans" xmlns:core="http://www.mulesoft.org/schema/mule/core" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="CE-3.2.1" xsi:schemaLocation="
http://www.mulesoft.org/schema/mule/http http://www.mulesoft.org/schema/mule/http/current/mule-http.xsd 
http://www.mulesoft.org/schema/mule/file http://www.mulesoft.org/schema/mule/file/current/mule-file.xsd 
http://www.mulesoft.org/schema/mule/jms http://www.mulesoft.org/schema/mule/jms/current/mule-jms.xsd 
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd 
http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd ">
    <jms:activemq-connector name="Active_MQ" brokerURL="tcp://localhost:61616" validateConnections="true" doc:name="Active MQ"/>
    <flow name="Inititationflow" doc:name="Inititationflow">
        <http:inbound-endpoint exchange-pattern="request-response" host="localhost" port="8046" doc:name="HTTP"/>
        <echo-component doc:name="Echo"/>
        <jms:outbound-endpoint queue="BANK1" exchange-pattern="request-response" doc:name="JMS"/>
    </flow>
    <flow name="SampleTest" doc:name="SampleTest">
        <jms:inbound-endpoint queue="BANK1" connector-ref="Active_MQ" doc:name="JMS"/>
        <echo-component doc:name="Echo"/>
        <append-string-transformer message="AppendedPart" doc:name="Append String"/>
        <echo-component doc:name="Echo"/>
        <file:outbound-endpoint path="C:\Documents and Settings\balajik\Desktop" outputPattern="myfile.txt" doc:name="File"/>
    </flow>
</mule>

Http ブラウザ リクエストを行うときはいつでも: lh:8046/manasa-sundarraman

2 つのリクエストが発生すると、フローは 2 回実行されます。リクエストは: 1) /favicon.ico 2) /manasa-sunderraman

私の質問は、その /favicon.ico は何ですか? なぜそれがリクエストとして来ているのですか?それを避ける方法は?

4

2 に答える 2

6

favicon.ico リクエストをクリアする方法を見つけました。間にフィルタを追加すると、favicon.ico リクエストをフィルタリングできます。

<message-filter doc:name="Filter favicon">

<not-filter>

<wildcard-filter pattern="/favicon.ico" caseSensitive="true"/>

</not-filter>

</message-filter>

Httpリクエストをエコーし​​た後に追加すると、問題が解決します

于 2012-09-14T06:55:04.900 に答える
2

MuleSoft の基本的なチュートリアルでは、3.6 以降の新しい HTTP リスナーで動作するソリューションを提供します。

<expression-filter expression="#[message.inboundProperties.'http.request.uri' != '/favicon.ico']" doc:name="Filter favicon"/>

3.5.0 以下の場合:

<expression-filter expression="#[payload != '/favicon.ico']" doc:name="Filter favicon"/>
于 2015-06-24T19:32:53.393 に答える