Я думаю, вы упустили, чтобы проинструктировать весну для сканирования классов с аннотацией.
Вы можете использовать @ComponentScan("packageToScan")
в классе конфигурации вашего весеннего приложения, чтобы проинструктировать весну для сканирования.
@Service, @Component
и т. д. аннотации добавляют мета-описание.
Spring только вводит экземпляры тех классов, которые либо создаются как bean-элементы, либо помечены аннотацией.
Классы, отмеченные аннотацией, должны быть идентифицированы весной перед инъекцией, @ComponentScan
указать весну найдите классы, отмеченные аннотацией. Когда Spring находит @Autowired
, он ищет связанный компонент и вставляет требуемый экземпляр.
Добавление только аннотации, не исправляет или облегчает инъекцию зависимостей, Spring должна знать, где искать.
В качестве альтернативы можно также использовать file_get_contents и stream_context_create :
$opts = array('http' =>
array(
'header' => 'User-agent: Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/3B48b Safari/419.3',
)
);
$context = stream_context_create($opts);
$result = file_get_contents($url, false, $context);
Вам нужно установить строку пользовательского агента:
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420.1 (KHTML, like Gecko) Version/3.0 Mobile/3B48b Safari/419.3');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$page = curl_exec($ch);
curl_close($ch);
m.example.com
), вы можете просто запросить, чтобы url вместо заголовков не изменился.
– Marc B
8 February 2011 в 20:18
Это то, что вы ищете?
curl -A "Mozilla/5.0 (iPhone; U; CPU like Mac OS X; en) AppleWebKit/420+ (KHTML, like Gecko) Version/3.0 Mobile/1A543a Safari/419.3" http://example.com/your-url