2012-01-20 7 views
2

Я вижу, что SharePoint 2010 делают JavaScript AJAX звонков на некоторые довольно скользкие внутренние услуги, какКак копировать социальные вызовы ajax, сделанные внутри SharePoint 2010?

https://<server>/_vti_bin/socialdatainternalservice.json 

https://<server>/_vti_bin/TaxonomyInternalService.json 

как эти разные, чем-то вроде https://<server>/_vti_bin/SocialDataService.asmx который имеет документацию. Есть несколько запросов, используемых этими внутренними вызовами, которые я действительно хотел бы дублировать. Любая помощь будет оценена по достоинству.

Наблюдая консоль, которая нажатие кнопки «Метки & Notes» кнопки вы можете увидеть SharePoint сделать одну АЯКС записи в https://<server>/_vti_bin/socialdatainternalservice.json/GetSocialTagInternal, который он посылает очень краткий data : '{"targetPage":"your url here","maximumItemsToReturn":"12"}' и получает в натуральной форме очень красивый:

{ 
    "d":{ 
     "MyTags":[ 
     { 
      "Term":"I like it", 
      "TermFullPathName":"[Keywords:I like it]", 
      "TermID":"9f2d5361-a23f-4d95-be9b-f9d385a0f5b9", 
      "Path":"I like it", 
      "IsPrivate":false 
     } 
     ], 
     "OtherTags":[ 
     { 
      "Term":"I like it", 
      "TermFullPathName":"[Keywords:I like it]", 
      "TermID":"9f2d5361-a23f-4d95-be9b-f9d385a0f5b9", 
      "Path":"I like it", 
      "IsPrivate":false 
     }, 
... 

Если любой может подумать о любом способе получения такого возврата из существующего веб-сервиса SP, я был бы всегда благодарен.

+6

Весьма вероятно, что эти услуги имеют 'internal' в названии по той же причине вы не можете найти документацию: Microsoft не хочет, чтобы использовать их. Если вы их используете, нет никакой гарантии, что Microsoft не нарушит API (и вашу программу) в будущих выпусках. –

+0

Возможно, в Microsoft есть документация * внутренне *, но поскольку она * внутренняя *, вы не можете получить к ней доступ. :) Если у вас есть * частный * офис в вашем здании, вы публикуете, где вы прячете ключ к нему? Конечно, нет - это * частный *. * Внутренний * означает «недоступен для публики для использования». –

+0

Это было бы хорошо, если бы они решили разоблачить разумные альтернативы. Вместо этого они используют внутренние сообщения Json внутри, чтобы делать полезные вещи (например, извлекать теги пользователя на URL-адресе) и выставлять GARBAGE для меня, делая вызовы мыла, чтобы получить список каждого URL-адреса, помеченного тегом пользователя. – Sinetheta

ответ

1

Из того, что я вижу this - это точный веб-сервис, который вы ищете. Tt является SOAP, а не JSON, но кроме этого он делает то, что вы просите, и возвращает теги текущего пользователя по указанному URL-адресу, а именно массив SocialTagDetail со всеми подробностями ...

Чтобы вызвать веб-службу SOAP через Javascript видеть их:

+1

/facepalm Спасибо Яхья, я мог бы поклясться, что посмотрел на все веб-службы. Видимо, я не читаю, GetTags действительно GetTagsOfUserOnUrl, просто с более коротким именем;) – Sinetheta

+0

@Sinetheta приветствую :-) – Yahia

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