Создам эту тему что бы здесь обсуждать создание приложений/ Создание iframe приложения с помощью сервиса js API от vkontakte API вконтакте дает нам возможность создавать приложения с помощью html, ajax и обрабатывать посредством php (работать с бд mysql) Для начала, подключаем сам js
Далее после по рассказам страницы api приложение инициализируется с помощью данного кода
Code
<script type="text/javascript"> VK.init(function() { // API initialization succeeded // Your code here }); </script>
Заместо // API initialization succeeded // Your code here
Мы начинаем писать код.... Для примера вывод информации о юзере:
Code
var parts=document.location.search.substr(1).split("&"); var flashVars={}, curr; for (i=0; i<parts.length; i++) { curr = parts[i].split('='); // записываем в массив flashVars значения. Например: flashVars['viewer_id'] = 1; flashVars[curr[0]] = curr[1]; }
// получаем viewer_id из полученных переменных var viewer_id = flashVars['viewer_id'];
// выполняем запрос получения профиля VK.api("getProfiles", {uids:viewer_id,fields:"photo_big"}, function(data) { // обрабатываем полученные данные // выводим имя и фамилию в блок user_info document.getElementById('user_info').innerHTML = data.response[0].first_name + ' ' + data.response[0].last_name + '<br />'; // создаем img, для отображения аватарки var image=document.createElement('img'); // из полученных данных берем ссылку на фото image.src=data.response[0].photo_big; // добавляем img в блок user_info user_info.appendChild(image); });
Потом на странице пишем html код
Code
<div id="user_info"></div>
В нашем случае там генерируется информация о юзере Вот список методом для работы с данными вконтакте:
Code
Пользователи
* isAppUser – возвращает установил пользователь данное приложение или нет. * getProfiles – возвращает расширенную информацию о пользователях. * getUserBalance – возвращает баланс текущего пользователя в данном приложении. * getUserSettings – возвращает настройки приложения текущего пользователя. * getGroups – возвращает список id групп, в которых состоит текущий пользователь. * getGroupsFull – возвращает базовую информацию о группах, в которых состоит текущий пользователь.
Друзья
* friends.get – возвращает список id друзей пользователя. * friends.getAppUsers – возвращает список id друзей пользователя, которые установили данное приложение. * friends.getOnline - возвращает список id друзей пользователя, находящихся сейчас на сайте. * friends.getMutual – возвращает список id общих друзей между парой пользователей.
Фотографии
* photos.getAlbums – возвращает список альбомов пользователя. * photos.get – возвращает список фотографий в альбоме. * photos.getById – возвращает информацию о фотографиях. * photos.createAlbum – создает пустой альбом для фотографий. * photos.editAlbum – обновляет данные альбома для фотографий. * photos.getUploadServer – возвращает адрес сервера для загрузки фотографий. * photos.save – сохраняет фотографии после успешной загрузки. * photos.getProfileUploadServer – возвращает адрес сервера для загрузки фотографии на страницу пользователя. * photos.saveProfilePhoto – сохраняет фотографию страницы пользователя после успешной загрузки. * photos.edit – изменяет описание у выбранной фотографии. * photos.move – переносит фотографию из одного альбома в другой. * photos.makeCover – делает фотографию обложкой альбома. * photos.reorderAlbums – меняет порядок альбома в списке альбомов пользователя. * photos.reorderPhotos – меняет порядок фотографий в списке фотографий альбома.
Стена
* wall.getPhotoUploadServer – возвращает адрес сервера для загрузки фотографии на стену. * wall.savePost – сохраняет запись на стене пользователя.
Аудиозаписи
* audio.get – возвращает список аудиозаписей пользователя или группы. * audio.getById – возвращает информацию об аудиозаписях по их идентификаторам. * audio.getLyrics - возвращает текст аудиозаписи. * audio.getUploadServer – возвращает адрес сервера для загрузки аудиозаписей. * audio.save – сохраняет аудиозаписи после успешной загрузки. * audio.search – осуществляет поиск по аудиозаписям. * audio.add – копирует существующую аудиозапись на страницу пользователя или группы. * audio.delete – удаляет аудиозапись со страницы пользователя или группы. * audio.edit – редактирует аудиозапись пользователя или группы. * audio.restore – восстанавливает удаленную аудиозапись пользователя или группы. * audio.reorder – изменяет порядок аудиозаписи в списке аудиозаписей пользователя.
Видеозаписи
* video.get – Возвращает информацию о видеозаписях. * video.edit – редактирует данные видеозаписи на странице пользователя. * video.add – копирует видеозапись на страницу пользователя. * video.delete – удаляет видеозапись со страницы пользователя. * video.search – возвращает список видеозаписей в соответствии с заданным критерием поиска. * video.getUserVideos – возвращает список видеозаписей, на которых отмечен пользователь. * video.getComments – возвращает список комментариев к видеозаписи. * video.createComment – создает новый комментарий к видеозаписи. * video.editComment – изменяет текст комментария к видеозаписи. * video.deleteComment – удаляет комментарий к видеозаписи. * video.getTags – возвращает список отметок на видеозаписи. * video.putTag – добавляет отметку на видеозапись. * video.removeTag – удаляет отметку с видеозаписи. * video.save – возвращает данные, необходимые для загрузки видеозаписей, а также данные видеозаписи.
Геолокация
* places.add – создает новое место. * places.getById – возвращает информацию о местах. * places.search – возвращает список найденных мест. * places.checkin – отмечает пользователя в указанном месте. * places.getCheckins – возвращает список отметок. * places.getTypes – возвращает список типов мест. * places.getCountries – возвращает список стран. * places.getCities – возвращает список городов. * places.getCountryById – возвращает информацию о странах по их id. * places.getCityById – возвращает информацию о городах по их id.
Методы, требующие наличия стороннего сервера
* secure.sendNotification – отправляет уведомление пользователю. * secure.saveAppStatus – сохраняет строку статуса приложения для последующего вывода в общем списке приложений на странице пользоваетеля. * secure.getAppStatus – возвращает строку статуса приложения, сохранённую при помощи secure.saveAppStatus. * secure.getAppBalance – возвращает платежный баланс приложения. * secure.getBalance – возвращает баланс пользователя на счету приложения. * secure.withdrawVotes – списывает голоса со счета пользователя на счет приложения. * secure.getTransactionsHistory – возвращает историю транзакций внутри приложения. * secure.addRating – поднимает пользователю рейтинг от имени приложения. * secure.setCounter – устанавливает счетчик, который выводится пользователю жирным шрифтом в левом меню, если он добавил приложение в левое меню.
Методы для отправки и приема SMS
* secure.getSMSHistory – возвращает список SMS-уведомлений, отосланных приложением. * secure.sendSMSNotification – отправляет SMS-уведомление на телефон пользователя. * secure.getSMS - возвращает тексты SMS, полученные от пользователей приложения. * setSMSPrefix - устанавливает префикс для приема SMS. * getSMSPrefix - возвращает префикс для приема SMS.
Методы для локализации приложений
* language.getValues – возвращает список переведенных на указанный язык фраз. * secure.setLanguageValue – создает языковую фразу для перевода на другие языки. * secure.deleteLanguageValue – удаляет языковую фразу.
Другие методы
* execute - позволяет исполнять алгоритмы в API. * getVariable – возвращает значение хранимой переменной. * getVariables – возвращает значения нескольких переменных. * putVariable – записывает значение переменной. * getHighScores – возвращает таблицу рекордов. * setUserScore – записывает результат текущего пользователя в таблицу рекордов. * getMessages – возвращает список очереди сообщений. * sendMessage – ставит сообщение в очередь. * getServerTime – возвращает текущее время. * getAds – возвращает рекламные объявления для показа пользователям. * setNameInMenu – устанавливает короткое название приложения в левом меню, если пользователь добавил туда приложение.
Методы сервиса предложений
* offers.edit – сохраняет информацию о предложении пользователя. * offers.open – открывает предложение пользователя для общего доступа. * offers.close – закрывает предложение пользователя. * offers.get – возвращает информацию о предложении пользователя. * offers.search – возвращает информацию о случайном предложении в соответствии с выбранными фильтрами. * offers.getInboundResponses – возвращает информацию об ответах на предложение пользователя. * offers.getOutboundResponses – возвращает информацию об ответах пользователя на другие предложения. * offers.accept – принимает предложение. * offers.refuse – отклоняет предложение. * offers.setResponseViewed – отмечает ответы на предложение пользователя как просмотренные. * offers.deleteResponses – удаляет ответы на предложение пользователя.
Методы сервиса вопросов
* questions.get – возвращает список вопросов пользователя. * questions.edit – редактирует информацию о вопросе. * questions.add – создает новый вопрос. * questions.delete – удаляет вопрос. * questions.search – возвращает список найденных вопросов. * questions.getTypes – возвращает список всех возможных типов вопросов. * questions.getOutbound – возвращает список вопросов, на которые ответил пользователь. * questions.getAnswers – возвращает ответы на вопрос. * questions.addAnswer – добавляет ответ на вопрос. * questions.deleteAnswer – удаляет ответ на вопрос. * questions.joinAnswer – этим вызовом пользователь присоединяется к ответу. * questions.getAnswerVotes – возвращает список пользователей, присоединившихся к ответу. * questions.markAsViewed – отмечает список ответов на вопросы пользователя как просмотренные.
Методы работы с заметками
* notes.get – возвращает список заметок пользователя. * notes.getById – возвращает текущую заметку пользователя. * notes.getFriendsNotes – возвращает список заметок друзей пользователя. * notes.add – создаёт новую заметку * notes.edit – редактирует заметку пользователя * notes.delete – удаляет заметку пользователя * notes.getComments – возвращает список комментариев к заметке. * notes.createComment – добавляет новый комментарий к заметке. * notes.editComment – изменяет текст комментария к заметке. * notes.deleteComment – удаляет комментарий у заметки. * notes.restoreComment – восстанавливает комментарий у заметки.
Методы работы с вики-страницами
* pages.get – возвращает вики-страницу. * pages.save – сохраняет текст вики-страницы. * pages.saveAccess – сохраняет настройки доступа вики-страницы. * pages.getVersion – возвращает старую версию вики-страницы. * pages.getHistory – возвращает список всех старых версий вики-страницы. * pages.getTitles – возвращает список вики-страниц в группе. * parseWiki – возвращает html-представление wiki-разметки.
Устаревшие методы
* getUserInfo – возвращает краткую информацию о текущем пользователе. * getUserInfoEx – возвращает расширенную информацию о текущем пользователе. * activity.get – возвращает последнюю запись пользователя с собственной стены. * activity.set – добавляет сообщение на стену текущего пользователя. * activity.getHistory – возвращает записи пользователя, написанные им на своей стене. * activity.getNews – возвращает обновления записей пользователей на собственных стенах.
Предлагаем идеи и прочее, самому интересно:)
Сообщение отредактировал cougraAcc - Четверг, 30 Декабря 2010, 14:58
<script type="text/javascript"> VK.init(function() { // когда загрузится вся страниц
var parts=document.location.search.substr(1).split("&"); var flashVars={}, curr; for (i=0; i<parts.length; i++) { curr = parts[i].split('='); // записываем в массив flashVars значения. Например: flashVars['viewer_id'] = 1; flashVars[curr[0]] = curr[1]; }
// получаем viewer_id из полученных переменных var viewer_id = flashVars['viewer_id'];
// выполняем запрос получения профиля VK.api("getProfiles", {uids:viewer_id,fields:"photo_big"}, function(data) { // обрабатываем полученные данные // выводим имя и фамилию в блок user_info document.getElementById('user_info').innerHTML = data.response[0].first_name + ' ' + data.response[0].last_name + '<br />'; // создаем img, для отображения аватарки var image=document.createElement('img'); // из полученных данных берем ссылку на фото image.src=data.response[0].photo_big; // добавляем img в блок user_info user_info.appendChild(image); }); </script> </head> <body> <div id="user_info"></div> </body> </html>
Сообщение отредактировал Angevengelist - Четверг, 30 Декабря 2010, 15:31
Angevengelist, Не так то тут не мануалы... дружно вникаем в создание приложений
Добавлено (31.12.2010, 15:20) --------------------------------------------- UP Начал работы по переписыванию скрипта "Битва роботов" под vkontakte в этой теме буду держать людей в курсе
Еще одна гама для задротов Бросайте ВЫЗЫВАЮ АТКУ ГОВНОМ ВСЕ ЮЗЕРЫ УБИТЫ УРОВЕНЬ 7 ПОЛУЧЕН ТЕЛЕПОРТ Играю игры, делаю игры, ненавижу игры o_O, товарищи!
а в курсе кто-нибудь, можно со стороннего сайта изменить статус контактовский через его апи. vk.init нормально проходит, могу получить инфу о пользователе, но непонятно можно ли использовать методы activity.get и activity.set со своего сайта. Разработка и продвижение сайтов. Дизайн